次のコマンドを使用して、リモートファイルをローカルファイルと同期させる必要があります。
rsync -schavzP --stats --files-from=./filelist.txt -e "ssh -p 22" [email protected]:/home/somewhere/ .
filelist.txtには複数のサブフォルダーファイル名が含まれていますが、
subfolder/746fbd52ec4441b88f62ead5beb8e57e
subfolder/test
このコマンドは、次のエラーを提供します。
rsync: link_stat "/home/somewhere/subfolder/746fbd52ec4441b88f62ead5beb8e57e" failed: No such file or directory
files-fromなしでrsyncを実行し、コマンドラインから直接リモートファイル名を指定すると機能します。
誰でも私を助けることができればとても感謝します。ありがとうございます。
答え1
いつものように、本当の理由は私が考えたものとは異なりました。
"filelist.txt"は、ファイルの先頭にBOMコードが隠されたコードとして含まれるUTF8テキストファイルです。 「vi」、「vim」、「nano」も表示できません。
この隠しコードをすべて削除すると、bashスクリプトの上記のrsyncコードが機能します。
混乱させて申し訳ありません。