![rmは一度にいくつのファイルを削除できますか? [コピー]](https://linux33.com/image/66976/rm%E3%81%AF%E4%B8%80%E5%BA%A6%E3%81%AB%E3%81%84%E3%81%8F%E3%81%A4%E3%81%AE%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E5%89%8A%E9%99%A4%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E3%82%B3%E3%83%94%E3%83%BC%5D.png)
私の友人が/var/log/
そのディレクトリにログをもっと欲しいので、しばらくシステムを使用した後、フォルダにアクセスして一覧表示しようとしましたが、次のエラーが発生しました。
bash: /bin/rm: Argument list too long
rm
このリストにいくつのファイルを追加できるかどうかを知っている人はいますか?
答え1
コマンドラインの最大長はシステムによって設定され、時には128KiBです。
rm
非常に多くのファイルを削除する必要がある場合は、何度も呼び出す必要がありますxargs
。
find /var/log -type f -print0 | xargs -0 rm --
(注意してください。これにより、etcサブディレクトリにあるすべてのファイルを見つけて削除します/var/log
。そのファイルを使用したくない場合find /var/log/ -type f -maxdepth 1
)。find
0(改行ではない)で区切られたファイルを一覧表示し、xargs -0
この入力を正しく受け入れてから(スペースを含むファイル名を処理するために)rm --
ファイルを呼び出します。
使用rm -f --
(注意して使用してください)ファイルを削除するかどうかを尋ねられ、そのファイルを削除するかどうかを尋ねられます。