Varias veces durante el día, es posible que esté ejecutando una prueba en la que necesito buscar en un archivo de registro en un servidor remoto. Me he acostumbrado a usar mi terminal sftp
en el servidor remoto y descargar el archivo de registro deseado /tmp
en mi máquina local.
Estaba revisando las opciones que usaba hoy man sftp
en un intento de encontrar una manera de ejecutar los siguientes comandos básicamente en una sola línea para que no tenga que escribir un comando, presionar enter, escribir un comando, presionar enter, etc.
(Qué hago ahora)
sftp myuser@myserver
--mypassword at prompt
lcd /tmp
get /dir/dir/dir/dir/file
quit
Encontré mientras buscaba man sftp
una referencia scp
que no había usado antes. Siento que puede ser lo que estoy buscando, pero no vi una forma de especificar dónde quería que fuera el archivo copiado de forma segura.
¿Alguien podría proporcionarme una forma de acceder /dir/file
desde un servidor remoto y descargarlo /tmp/file_plus-my-description
?
Esperaba poder ejecutar un comando sftp o scp similar a una copia normal de UNIX como:
scp myuser@myserver /dir/file /tmp/file_plus-my-description
Estoy usando el integrado Terminal
en Mac OS X 10.8. Gracias.
Para CARGAR un solo archivo, necesitará crear un script bash. Algo como lo siguiente debería funcionar en OS X si lo ha
sshpass
instalado.Uso:
Pon este script en algún lugar de tu camino y llámalo
sftpx
:fuente
sftp admite archivos por lotes.
Desde la página del manual:
fuente
--batch
me obligaría a poner mis comandos en un archivo y luego pasar ese archivo como parámetro. Todavía estoy jugandoscp
, siento que puede contener mi solución.O
echo 'put {path to file}' | sftp {user}@{host}:{dir}
, que funcionaría tanto en Unix como en PowerShell.fuente
Una pequeña modificación como la que se muestra a continuación funcionó para mí cuando la usé desde perl y system () call:
fuente
Respuesta de SCP
El OP mencionó a SCP, así que aquí está eso.
Como han señalado otros, SFTP es confuso ya que la sintaxis de carga es completamente diferente de la sintaxis de descarga . Se vuelve un poco más fácil de recordar si usa el mismo formulario:
En realidad, esto sigue siendo un desastre, y es por eso que la gente todavía usa comandos "obsoletos" como SCP:
SCP es seguro pero anticuado. Tiene algunos errores que nunca se solucionarán, es decir, fallar si el servidor
.bash_profile
emite un mensaje. Sin embargo, en términos de usabilidad, los desarrolladores estaban años por delante.fuente