テキストファイルの内容を元にファイルをコピーする
files.txt内に1行毎に書かれているファイルを特定ディレクトリにコピー(ディレクトリ構造を維持した状態で)
Mac OSX
$ cat files.txt | xargs -I dest_dir -J % rsync -R % dest_dir/
$ mkdir -p dest_dir; cat files.txt | awk '{print $1}' | xargs cp -p --parents --target-directory=dest_dir/
files.txt
dir1/dir2/text1.txt dir1/dir2/dir3/test2.txt
コマンド叩く前
. ├── dir1 │ └── dir2 │ ├── text1.txt │ └── dir3 │ └── test2.txt └── files.txt
コマンド叩いた後
. ├── dest_dir │ └── dir1 │ └── dir2 │ ├── text1.txt │ └── dir3 │ └── test2.txt ├── dir1 │ └── dir2 │ ├── text1.txt │ └── dir3 │ └── test2.txt └── files.txt
gitで特定のリビジョン以降の差分ファイルを取得同じディレクトリ構造でコピー
Mac OSX
$ git diff revision HEAD --name-only | xargs -I dest_dir -J % rsync -R % dest_dir/
$ mkdir -p dest_dir; git diff revision HEAD --name-only | awk '{print $1}' | xargs cp -p --parents --target-directory=dest_dir/