lftp: login, letakkan file dalam dir remote dan keluar dalam satu perintah: bantuan kutipan yang tepat

17

Saya ingin menggunakan lftp -cuntuk melakukan seluruh sesi sekaligus (karena saya akan meluncurkan ini dari skrip nanti) dan saya berhasil dengan -etetapi ofc membuat saya dengan sesi interaktif yang tidak saya inginkan.

Status manual

-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.

Tetapi saya tidak mengerti bagaimana saya harus mengutip dan merangkai perintah / interaksi saya bersama dengan benar.

lftp -e "put -O remote/dir/ /local/file.txt" -u user,pass ftpsite.com bekerja sangat baik. Tapi saya ingin keluar setelah menjalankan perintah;

lftp -c "open -u user,pass ftpsite.com" || put -O "remote/dir/ /local/file.txt" hanya berteriak kepada saya, atau sebenarnya kombinasi dari setiap kutipan yang saya coba ( ||atau &&terlepas)

Recct
sumber
cukup tambahkan; keluar atau; bye :)
meso_2600

Jawaban:

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

harus melakukannya.

Jika ini tidak berhasil coba tambahkan ke /etc/lftp.confbaris berikut Anda:

set ftp:ssl-protect-data true
set ftp:ssl-force true
set ftp:ssl-auth TLS
set ssl:verify-certificate no
glenn jackman
sumber
2
apakah ada cara untuk membuatnya berfungsi jika kata sandi memiliki karakter di dalamnya seperti' " : ;
Pete
Saya tersandung, karena saya memiliki ruang setelah koma pertama itu, begitu saya mengetahui bahwa itu bekerja dengan baik
patrick
10

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

Mohnish
sumber
1

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

dan letakkan kredensial Anda di bawah ~ / .netrc like

machine ftp.yourhost.com login your_username password your_password

Memasukkan kata sandi di cli sama sekali tidak bisa dilakukan karena itu bahkan dapat dibaca saat menggunakan ps -aux saat mengunggah .. di samping bash history juga.

Eugen Mayer
sumber