さて、私はついに問題を解決しました。 ls を引き起こすファイルシステムエラーが原因でした 誤って表示されたり、他のユーティリティが誤動作したりする可能性があります。
質問のタイトルが誤解を招くようで申し訳ありません ( u/ 内に実際に多くのファイルがあるにもかかわらず) 、ディレクトリはあまり大きくありません ).
破損したファイルシステムは / であるため、ライブ USB を使用して問題を解決しました .修正は単に sudo fsck -cfk /dev/sda2 を適用するだけでした どこで dev/sda2 は破損したディスクです。
rm を使用して大量のファイルを削除することはできません .どちらでも構いません
find u/ -type f -print0 | xargs -r -0 rm -f
これにより、ファイルのみが削除されます。すべてを削除するには
find u/ -print0 | xargs -r -0 rm -rf
おそらく --delete を使用できます find のオプション 、システムにある場合:
find u/ -type f --delete
または rsync を使用したファンキーな方法 :
mkdir emptyfolder
rsync -r --delete emptyfolder/ u/
rsync rm よりもはるかに高速です いくつかのチェックをバイパスするため、ものを削除するとき。
find /u -type f | while read f; do rm -f $f; done を試すことができます これにはしばらく時間がかかりますが、うまくいくかもしれません。何らかの理由で、bash のループは、他のアプローチが失敗したときにうまく機能します。