当サイトはプロモーションが含まれています。

大量ファイル削除時のArgument list too longエラーに対処する

頭を抱える椅子に座った男性

自動生成されるキャッシュファイルを一括削除しようとしたところ、下記エラーメッセージが表示され、削除できませんでした。

rm *

/bin/rm: Argument list too long

該当キャッシュファイルは5万ファイルほどあって、どうやらコマンド引数の文字数制限に引っかかってしまった模様でした。

※コマンド引数の文字数制限は、OS毎に異なっていて、CentOS 6.4では約2.5MBでした。(CentOS 5.10では約128KB)

対策としては、xargsを用いることです。
具体的には以下のコマンドです。

find . -type f -print | xargs rm

これで、削除したいファイルがすべて削除されました。
上記コマンド少し調整すれば、大量ファイルの移動(mv)なんかもいけるみたいです。