4
現在、8Kファイルを持つディレクトリがあります。次の月かそれ以上になると、その数は100Kプラスに増加します。特定のパターンに一致するディレクトリ内のファイルを数えられるようにする必要があります。ファイルの数があまりにも大きくなり、パターンによってカウントする時間を増加し続けたようパターンに一致するファイルの数を得るための速い方法
[[email protected] scripts]$ time ls | grep . -c
8373
real 0m0.115s
user 0m0.109s
sys 0m0.009s
[[email protected] scripts]$ time ls *.o* | grep . -c
6262
real 0m1.997s
user 0m0.121s
sys 0m0.270s
:パターンマッチは、膨大な時間を追加します。私はこれを回避することはできますか?
ファイルシステムはLustreであり、私は移植性のないソリューションを扱うことができます。
パーフェクト!!どうもありがとう。 – Sevenless
ファイル名に改行がある場合は、2つ以上のファイルとしてカウントされることがあります。私はこれをするでしょう: 'find。 -maxdepth 1 -name '* .o' -printf「\ n」| wc -l'。 (この場合、 '-name '* .o' 'は' .'がカウントされないようにしますが、 '-mindepth 1'で' .'を除外する必要があるかもしれません)。 – musiphil