¿Por qué obtengo un comportamiento diferente del comando scp en csh y bash?


0

¿Por qué obtengo un comportamiento diferente del comando scp en csh y bash?

El mismo comando funciona en csh shell, pero no funciona en bash shell.

Por favor, ¿alguien puede ayudar?


bash-3.2$  csh
Linux-007% scp root@1.2.3.4:/{/root/install.log} /
install.log 100% 98KB 97.6KB/s 00:00
Linux-007%  which scp
/usr/bin/scp

Linux-007% bash
bash-3.2$  scp root@1.2.3.4:/{/root/install.log} /
scp: /{/root/install.log}: No such file or directory
bash-3.2$ which scp
/usr/bin/scp

Respuestas:


2

scpNo es el problema. El problema está en la forma en que las dos cubiertas manejan las llaves.

csh% echo root@1.2.3.4:/{/root/install.log}
root@1.2.3.4://root/install.log

bash$ echo root@1.2.3.4:/{/root/install.log}
root@1.2.3.4:/{/root/install.log}

¿Por qué quieres las llaves de todos modos?


Sí, quiero copiar varios archivos.
user87005

1
El comando que nos mostró solo copia un archivo. Pero si quieres las llaves para ser interpretadas en el sistema remoto, poner comillas simples alrededor del argumento: scp 'root@1.2.3.4:/{/root/install.log}' /.
Keith Thompson el

mismo problema bash-3.2 $ scp root@1.2.3.4: / '{/ root / install.log}' / root@12.3.4 contraseña: scp: /{/root/install.log}: No existe tal archivo o directorio
user87005

Luego suelta los frenos. Si está copiando un solo archivo, como parece estar tratando de hacer en su ejemplo, no use llaves. Si realmente necesita copiar varios archivos, use llaves y comas, y cítelos:scp root@1.2.3.4:{this_file,that_file}' /
Keith Thompson
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.