lftp: inicie sesión, coloque el archivo en el directorio remoto y salga con un solo comando: ayuda de cotización adecuada


17

Quiero usar lftp -cpara hacer una sesión completa de una vez (ya que lanzaré esto desde un script más adelante) y lo logré, -epero eso me deja con la sesión interactiva que no quiero.

Estados manuales

-c commands
          Execute the given commands and exit. Commands can be separated with a semicolon,  `&&'
          or  `||'.  Remember to quote the commands argument properly in the shell.  This option
          must be used alone without other arguments.

Pero no entiendo cómo debo citar y encadenar mis comandos / interacciones correctamente.

lftp -e "put -O remote/dir/ /local/file.txt" -u user,pass ftpsite.com funciona excelente Pero quiero salir después de ejecutar el comando;

lftp -c "open -u user,pass ftpsite.com" || put -O "remote/dir/ /local/file.txt" solo me grita, o de hecho cualquier combinación de citas que probé ( ||o &&independientemente)


solo agregue; salga o; adiós :)
meso_2600

Respuestas:


28
$ lftp -c "open -u user,pass ftpsite.com; put -O remote/dir/ /local/file.txt" 

Deberías hacerlo.

Si esto no funciona, intente agregar a /etc/lftp.conflas siguientes líneas:

set ftp:ssl-protect-data true
set ftp:ssl-force true
set ftp:ssl-auth TLS
set ssl:verify-certificate no

2
¿hay alguna forma de hacer que esto funcione si la contraseña tiene caracteres como él?' " : ;
Pete

Me tropecé, porque tenía un espacio después de esa primera coma, una vez que me di cuenta de que funcionó muy bien
patrick

10

lftp -e "put -O remote/dir/ /local/file.txt; bye" -u user,pass ftpsite.com


1

lftp -e "put -O remote/dir/ /local/file.txt; bye" ftp.yourhost.com

y ponga sus credenciales en ~ / .netrc como

machine ftp.yourhost.com login your_username password your_password

Poner las contraseñas en el cli es absolutamente imposible ya que incluso son legibles cuando se usa ps -aux durante la carga ... además del historial de bash también.

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.