J'utilise tcsh. J'ai trouvé que quand je fais scp my
onglet, il ne s'auto my-file.txt
complète pas à my-file.txt
sous le directory courant, je dois préfixer un ./
là pour le compléter. Cela semble arriver seulement avec scp
. J'ai essayé d'autres commands, il semble bien fonctionner.
Je trouve que l' onglet scp
me donne la valeur de $HOSTNAME
(c'est-à-dire le nom d'hôte actuel) localhost
Donc on dirait qu'il essaie de faire correspondre le nom d'hôte, ne sais pas pourquoi ..
ajouté en réponse à un commentaire:
~/temp/test>ls -al total 12 drwxr-xr-x 2 liw liw 4096 Jul 21 15:16 . drwxr-xr-x 9 liw liw 8192 Jul 21 15:15 .. -rw-r--r-- 1 liw liw 0 Jul 21 15:16 my_file.txt ~>more .cshrc.user set prompt="%n@%m %~%#" set path=($HOME/bin $path) if (-o $HOME/.aliases) source $HOME/.aliases set filec set autolist set autoexpand set addsuffix bindkey ^r i-search-back ~> complete scp 'c%*@*:%`set q=$:-0;set q="$q:s/@/ /";set q="$q:s/:/ /";set q=($q " ");ssh $q[2] -l $q[1] ls -dp $q[3]\*`%' 'c%*:%`set q=$:-0;set q="$q:s/:/ /";set q=($q " ");ssh $q[1] ls -dp $q[2]\*`%' 'c%*@%$hosts%:' 'C@[./$~]*@f@' 'n/*/$hosts/:'
Il y a presque certainement un file de configuration tcsh à l'échelle du système dans / etc qui a une command complete
spéciale définie pour scp
. Le moyen le plus simple de vérifier ceci est de taper
complete
qui listra toutes les complétions personnalisées. Les directives d'achèvement personnalisé sont un peu compliquées, mais l'intention est probablement que si vous utilisez scp
au less un des arguments veut avoir un nom d'hôte dans le path d'access. Vous pouvez ensuite essayer de comprendre ce arcana ou simplement append
uncomplete scp
à votre ~/.tcshrc
et voler sur command manuelle pour cette command.
L'exécution automatique essaiera de faire correspondre toutes les inputs de votre file hosts. Une fois j'ai fait une auto complète et j'ai eu "sexyladies.com" et j'ai pensé que mon système était compromis car je n'ai jamais visité ce site.
Ce n'était pas le cas, j'avais une configuration de file d'hôtes avec environ 20k inputs de sites que je voulais bloquer. Donc, chaque fois que je fais une auto complète, elle passe par cette list.