lftp ユーザー資格情報は、-e または -c では使用できません。

lftp ユーザー資格情報は、-e または -c では使用できません。

lftp1つのコマンドを使用してファイルをリモートディレクトリに配置して終了したいと思います。上の回答をフォローこの問題この作業に関しては、以下を試しました。

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

次のエラーが発生します。

挿入: ログイン失敗: 530 ボックス: 無効なユーザー資格情報。

私は2回目の答えを試しました

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

同じエラーが発生しました。

段階的に完了すると、すべてが完璧です。

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

ただし、多くのファイルに対してこれを行う必要があります。コマンドを使用してスクリプトの一部として実行したいと思います。このエラーを解決する方法や検索/開始位置に関するヒントはありますか?

答え1

ほとんどのスクリプトは自動アップロード/ダウンロードを使用lftpし、HEREDOC構文を使用すると常に機能します。

 lftp -u user,pass ftpsite.com << EOF
 cd remote/dir/ 
 put /local/file.txt
 bye
 EOF

'パスワードには、シェルによって解釈された(そして正しく渡されないlftp)予約文字が含まれる可能性があるため、次の範囲内でパスワードを保護してくださいlftp -u user,'password'

関連情報