
Tengo algunas dificultades scp
para transferir archivos desde una computadora remota. El problema aparentemente tiene que ver con el nombre del directorio en el que se encuentran los archivos. Están en una unidad de CD llamada photos 4
(con un espacio entre photos
y 4
). Cuando intenté la transferencia, utilicé el siguiente comando:
scp [remote username]@192.168.1.X:/media/[remote username]/photos\ 4/file.jpg /home/[username]/Pictures
Sin embargo, recibo un mensaje de error que dice No directory: /media/[remote username]/photos
. Pensé que la barra invertida escaparía del espacio para que el directorio se leyera como photos 4
.
¿Alguien puede informarme sobre lo que estoy haciendo mal aquí?
(Además, hice una copia file.jpg
en el escritorio de la computadora remota y luego ejecuté el comando:
scp [remote username]@192.168.1.X:/home/[remote username]/Desktop/file.jpg /home/[username]/Pictures
y funcionó, por lo que esa secuencia de escape parece ser la culpable. Simplemente no puedo entender qué tiene de malo.)
Respuesta1
Los espacios en directorios o nombres de archivos son el enemigo natural de un sistema Linux pero, por supuesto, pueden serescapadocon la debida diligencia. Hay 3 posibilidades que puedes probar:
scp [remote username]@192.168.1.X:"'/media/remote_username/photos 4/file.jpg'" .
scp [remote username]@192.168.1.X:"/media/remote_username/photos\ 4/file.jpg" .
scp [remote username]@192.168.1.X:/media/remote_username/photos\\\ 4/file.jpg .
Todos deberían funcionar, pero algunos son sintácticamente más fáciles de entender que otros...
Referencias:
Respuesta2
Aquí está la solución para los usuarios de ZSH,
- scp '[correo electrónico protegido]:/media/"fotos 4"/archivo.jpg' /home/nombre de usuario/Imágenes
- scp '[correo electrónico protegido]:/media/"fotos 4"/"archivo con espacio.jpg"' /home/nombre de usuario/Imágenes