大きなディレクトリを取ってこなければならないときに、やっておくと良いこと

いらないファイルも一緒に取ってくるのは嫌。
rsyncとfindが役に立った。。

  • rsyncで--exclude, --exclude-fromを付ける。
  • findで大きそうな拡張子を探す。

findで大きそうな拡張子を探す。

拡張子を取り出す方法が思いつかないのでruby

find . -type f | ruby -ne 'puts "*."File.extname($_)' | sort -u > exclude.list
vi exclude.list #大きそうなものだけ残す

現在以下のディレクトリから拡張子を取り出してる。
その後、ファイルを編集して、おおきそうな拡張子のパターンだけを残す。

rsyncでいらないファイル除外してコピー

rsync -arP --exclude-from=exclude.list <src> <dst>

PS

ディレクトリのサイズを調べるのに。

du -h | tail

より良い方法があったら教えてください。

追記

場合によっては、findの-sizeが便利かもしれない。

find . -type -f -size +50k