大量のファイルを、ディレクトリを保ったまま移動したくなった。
他にいい方法が絶対あると思うが、とりあえず上手くいったのでこれで良しとする。
またfind
で拡張子を複数指定する方法も調べたので合わせてメモしておく。
cd /path/to/file
find /path/to/file -regextype posix-extended -regex '.*\.(jpg|png)' -print0 |
xars tar cv -T - --null | bash -c 'cd ~; tar x'
最後のように、bash -c
で標準入力を渡せるのが目から鱗でした。
参考
この記事のように、
find -name "hoge*" -print0 | xargs -0 tar cvzf hoges.tar.gz
してはまってました。
ありがとうございます。