--protect-argsオプションを使用すると、$ line引数をrsyncに渡します。

--protect-argsオプションを使用すると、$ line引数をrsyncに渡します。

私はスクリプトと次のコードを持っています -

cat file_list.txt | while read line
do
rsync --dry-run -avzPs '$line' '123.456.122.111:$line'
done

file_list.txtは次のようになります -

/some/random/directory/file_name.txt
/some/other/directory/a file name.html
.....

$line私が経験している問題は、動作方法のためにrsyncコマンドがパラメータで機能しないことです--protect-args。一部のファイル名にスペースがあるため、コマンドにこのオプションを含める必要があります。

ただし、テキスト文書に渡すすべてのパスと特定のファイルが含まれているため、ワイルドカードを使用してすべてを渡すことはできません。この問題をどのように解決できますか?

ベストアンサー1

--files-from=ファイルを指定するために使用しないのはなぜですか?

rsync -avzP --files-from=file_list.txt 123.456.122.111:

--no-relativeフルパスを必要とせずにすべてのファイルを同じディレクトリに配置したい場合でも、それを追加できます。

おすすめ記事