16

ファイルからテキストをロードし、フィールドの 1 つに従ってフィルタリングするプログラムがあります。私が興味を持っているのは、このフィルタリング手順後のデータのサイズです。

理想的には、次のようなことができます。awk '$2>=10' <myfile | du -

フィルターを適用して出力をどこかに保存し、du を呼び出してからファイルを削除することもできますが、ファイルが非常に大きいため、ディスクへの書き込みに時間がかかる場合があります。

それが「ディスク使用量」の略であることを認識するとdu、プログラムがどのように機能するかを考えると、意味のないことを尋ねているのではないかと思います。これを行う別の一般的なユーティリティがある場合は、それを提案してください!

4

3 に答える 3

23

wc -cにパイプして、パイプラインを通過するバイト数をカウントできます。

于 2012-11-16T14:36:34.573 に答える
5

du「ディスク使用量」の略です。パイプ内のデータはディスクにヒットしないため、操作する "du" はありません。wc代わりに「単語数」を使用してください。

awk '$2>=10' < myfile | wc -c

フラグは-cバイトをカウントします。

于 2012-11-16T14:38:17.997 に答える