LFTPを使用してシェルスクリプト内のFTPサーバーからファイルを削除しようとしていますが、何らかの理由で変数を使用せずリテラルとして受け取ります。変数を使用してLFTPを使用してファイルを削除する
コード:
lftp -e 'rm /thebackups/uselessfile.obsolete; bye' -u theuser,verygoodpassword example.com
をしかし、その代わりに、それは動作します:
lftp -e 'rm /${BACKUPDIR}/${FILETODELETE}; bye' -u theuser,verygoodpassword example.com
そして、それは見つけることができない原因を、私はそれが実行されて何をしたいのか
USERNAME="theuser"
PASSWORD="verygoodpassword"
SERVER="example.com"
BACKUPDIR="thebackups"
FILETODELETE="uselessfile.obsolete"
lftp -e 'rm /${BACKUPDIR}/${FILETODELETE}; bye' -u $USERNAME,$PASSWORD $SERVER
リテラルファイル "/ $ {BACKUPDIR}/$ {FILETODELETE}"をFTPサーバーに送信し、このように文句を言います。
私は間違って何をしていますか?
乾杯!
+1、動作します。よくフォーマットされた、b。目標の明確な説明、c。 O.P.がこれまでに行った仕事の明確な説明。幸運と転載を続ける。 – shellter