ディレクトリ配下(サブディレクトリを含む)ファイルを一括でmvする
やりたかったこと
Nintendo Switchのバックアップのアルバム(キャプチャや動画)を一括で同じ階層に移動したかった
やり方
cd ./Nintendo/Album/ #<移動元のパス> ls -d $(find `pwd`) | grep -e "jpg$" -e "mp4$" | xargs -I '{}' mv {} <to_dir> #<移動先のパス>
実行後の様子。
$ tree . └── 2022 ├── 01 │ ├── 24 │ └── 29 ├── 02 │ ├── 08 │ ├── 13 │ ├── 14 │ ├── 22 │ ├── 23 │ ├── 24 │ ├── 26 │ ├── 27 │ └── 28 ├── 03 │ ├── 05 │ ├── 12 │ ├── 21 │ ├── 23 │ ├── 24 │ └── 26 ├── 04 │ ├── 02 │ ├── 04 │ ├── 13 │ ├── 15 │ ├── 19 │ └── 21 ├── 05 │ ├── 02 │ ├── 18 │ ├── 21 │ └── 25 ├── 06 │ ├── 03 │ ├── 09 │ ├── 11 │ ├── 12 │ ├── 16 │ ├── 17 │ ├── 19 │ ├── 21 │ ├── 26 │ └── 30 ├── 07 │ ├── 01 │ ├── 05 │ ├── 09 │ ├── 11 │ ├── 15 │ ├── 24 │ ├── 26 │ ├── 29 │ └── 30 └── 08 ├── 04 ├── 07 ├── 11 ├── 24 └── 25 294 directories, 0 files
すべて同じ階層に並ぶ。