scp não é auto-completo da mesma forma que outros comandos

3

Estou usando o tcsh. Eu achei que quando eu faço Na guia scp my , ele não é preenchido automaticamente para my-file.txt no diretório atual Eu tenho que prefixar um ./ para torná-lo completo. Isso parece acontecer apenas com scp . Eu tentei outros comandos, parece funcionar bem.

Eu acho que scp tab me dá o valor de $HOSTNAME (isto é, o nome do host atual) localhost

Parece que ele está tentando corresponder ao nome do host, não sei por que ...

adicionado em resposta ao comentário:

 ~/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/:'
    
por wei 21.07.2013 / 23:53

2 respostas

3

Existe quase certamente um arquivo de configuração tcsh em todo o sistema em / etc que possui um comando especial complete definido para scp . A maneira mais fácil de verificar isso é digitar

complete

, que listará todas as conclusões personalizadas. As diretivas de completação customizadas são um pouco complicadas, mas a intenção é que, se você estiver usando scp , pelo menos um dos argumentos queira ter um nome de host no caminho de arquivo. Você pode então tentar descobrir essa arcana ou simplesmente adicionar

uncomplete scp

para o seu ~/.tcshrc e voe na substituição manual para esse comando.

    
por 22.07.2013 / 02:53
0

O preenchimento automático tentará corresponder a todas as entradas no arquivo de hosts. Certa vez, fiz um auto complete e obtive o "sexyladies.com" e achei que meu sistema estava comprometido, pois nunca visitei esse site.

Não, eu tinha uma configuração de arquivo de hosts com cerca de 20 mil entradas de sites que eu queria bloquear. Então toda vez que eu faço um auto complete, ele passa por essa lista.

    
por 22.07.2013 / 09:18

Tags