test/path/to/file/filename.xyz 形式のファイル リストを、対応する本番パス prod/path/to/file/filename.xyz にコピーしたいと思います。test パスと prod パスが、「test」ではなく「prod」であることを除いて同じである場合、次のコマンドを使用できますか? これにより、宛先ファイルが上書きされますか?
$ xargs -I % --arg-file=input.txt cp /test/% /prod/%
答え1
input.txt を次のように編集します ( に注意してください+
)
+ /path/to/file/filename.xyz
それから、
rsync -amv \
--include '*/' \
--include-from input.txt \
--exclude '*' \
test/ prod/
ファイルをその場で編集しながら直接実行することもできます。例:
rsync -amv \
--include '*/' \
--include-from <(sed 's/^/+ /' input.txt) \
--exclude '*' \
test/ prod/
sed
必要に応じて表現を変更する必要があるかもしれません。