GNU/Linux >> Tutoriales Linux >  >> Linux

Transferir archivos usando lftp en bash script

Manera simple con ftp:

#!/bin/bash

ftp -inv ip << EOF
user username password

cd /home/xxx/xxx/what/you/want/
put what_you_want_to_upload

bye
EOF

Con lftp:

#!/bin/bash

lftp -u username,password ip << EOF

cd /home/xxx/xxx/what/you/want/
put what_you_want_to_upload

bye
EOF

Del manual de lftp:

-u <user>[,<pass>]  use the user/password for authentication

Puede usar mkdir para crear un directorio. Y puedes usar el comando put varias veces así:

put what_you_want_to_upload
put what_you_want_to_upload2
put what_you_want_to_upload3

Y puedes cerrar la conexión con bye

Puede verificar si la carpeta existe o no así:

#!/bin/bash
checkfolder=$(lftp -c "open -u user,pass ip; ls /home/test1/test1231")

if [ "$checkfolder" == "" ];
then
echo "folder does not exist"
else
echo "folder exist"
fi

Del manual de lftp:

-c <cmd>            execute the commands and exit

Y puede abrir otra conexión para poner algunos archivos.

No sé cómo verificar si la carpeta existe o no con una conexión, pero puedo hacerlo así. Tal vez puedas encontrar una mejor solución:

#!/bin/bash
checkfolder=$(lftp -c "open -u user,pass ip; ls /home/test1/test2")

if [ "$checkfolder" == "" ];
then

lftp -u user,pass ip << EOF

mkdir test2
cd test2
put testfile.txt
bye
EOF

else

echo "The directory already exists - exiting"

fi

Linux
  1. Cómo transferir archivos de forma segura usando el comando SCP en Linux

  2. Cómo reemplazar espacios en nombres de archivos usando un script bash

  3. Bash script para eliminar todos los archivos excepto N cuando se ordenan alfabéticamente

  4. Script bash:usar el comando de script desde un script bash para iniciar sesión

  5. ¿Cómo verificar el acceso a Internet usando el script bash en Linux?

Cómo mostrar cuadros de diálogo GUI en bash script usando Zenity

Comparta archivos a través de Internet desde la línea de comandos usando Transfer.sh

Transferir archivos entre cualquier dispositivo utilizando Piping Server

Cómo sincronizar archivos de dos vías usando Osync Script en Linux

Transferir archivos usando WinSCP

Usando Bash Sort para ordenar archivos como un jefe