FreeBSDのソースコードをゲットせよ!
FreeBSDのlsのソースを見たとき、おぉぉぉぉコレダ!と思った。やはり、GNUは相当見にくいので、FreeBSDのソースコードを入手する事にした。FreeBSDの場合、コアパッケージの中に基本ユーティリティも入っている事が判ったので、がが〜っと、CVSでダウンロードする。
・・・ダウンロード中
暇なので、遊んでみる。恒例の行数を計る。
% wc -l $(find -type f) ...(略 1 ./src/bin/rmail/CVS/Repository 39 ./src/bin/rmail/Makefile 479232 total
tanakaは$()を覚えた!!めちゃめちゃスッキリ!!
・・・しばらく経ってもう一度やってみたら、
% wc -l $(find -type f) zsh: argument list too long: wc
コマンド置換では限界があるらしい。
・・・帰ってきたら終わってた。
xargsも使えなかったので、結局awk使った。
% find -type f -exec wc -l {} \; | awk '{lines+=$1;print $0}END{print lines}' ....ずらぁぁぁ〜。 ....10分位かかった。 13772238
えっと、えっと・・・
1千3百万行!!!!!!!!!!!!!偉いぞawk!!痛みに耐えてよくがんばった!!
今回はcontribも含めているので、やたらでかい。
1日1万行ずつ読んでも1300日かかります。
僕は100行理解するのに1日なので・・・。
参考
- 入門bash 4.4 コマンド置換