libc.aUNIXsizeコマンドを使用してモジュールの合計サイズを見つけようとしています。
それを実行すると、さまざまなファイルの合計サイズが表示されます。'size'の出力の1つの列(decこの場合、ファイルの合計サイズが10進数である列)を取得してそれらを合計する方法の1つは何ですか?
コマンドラインでそれを行うことは可能ですか?
これを行う1つの方法:
size libc.a | awk '{ print " " $4 " " }' | tail -n +2 | paste -sd'+' | xargs expr
手順:
size出力を生成するために使用awkスペースの間に挿入された4番目のフィールドを印刷するために使用しますtail2行目から印刷するために使用します(つまり、最初の行をスキップします)pasteで区切られたすべての行を結合するために使用します+xargs結果をパラメータとしてに渡すために使用しますexpr。
expr値を合計するために使用しますの実際のファイルサイズには関心がないが、の出力の列libc.aの合計を計算したい場合は、次のコマンドラインを使用します。decsize
size libc.a | tail -n +2 | cut -f 4 | tr -d '\n' | sed "s/^ *//;s/ *$//;s/ */+/g;s/$/\n/" | bc