タイトルと行番号を持つ猫?

タイトルと行番号を持つ猫?

このようなファイルがあります。

$ cat trapetz
x = 0:0.0001:7pi
plot(x, sin(x).*cos(x))
Area = trapz(x, sin(x).*cos(x))
$ cat simpson 
f = inline(sin(x).*cos(x));
Area2 = quad(f, 0, 7pi, 1e-16)

こんなことが欲しい

$ cat -b -t MISSING? trapetz simpson 
     traapetz 
     1  x = 0:0.0001:7pi
     2  plot(x, sin(x).*cos(x))
     3  Area = trapz(x, sin(x).*cos(x))
     simpson
     1  f = inline(sin(x).*cos(x));
     2  Area2 = quad(f, 0, 7pi, 1e-16)

それとも、トイレを追加する簡単な方法がある場合は、より良いでしょう。

$ find |tee |...|wc... I feel now reinventing the wheel, there must be some ready...
     traapetz: xyz chars
     1  x = 0:0.0001:7pi
     2  plot(x, sin(x).*cos(x))
     3  Area = trapz(x, sin(x).*cos(x))
     simpson: zyx chars
     1  f = inline(sin(x).*cos(x));
     2  Area2 = quad(f, 0, 7pi, 1e-16)

しかし、私は理解しています

$ cat -b -t trapetz simpson 
     1  x = 0:0.0001:7pi
     2  plot(x, sin(x).*cos(x))
     3  Area = trapz(x, sin(x).*cos(x))
     4  f = inline(sin(x).*cos(x));
     5  Area2 = quad(f, 0, 7pi, 1e-16)

実際には猫は必要ありませんが、Pastebinの代わりに上記のスニペットを共有して表示する簡単なツールです。標準のコマンドラインエントリが必要です。人々が簡単に再現できるように、codegolf.se用の簡単なパズルペーストを作成しようとしています...

ベストアンサー1

クイックシェルスクリプト:

#!/bin/sh
# usage: scriptname file1 file2 ...

for file in "$@"
do
    [ -f "$file" ] || continue
    set -- `wc "$file"`
    echo "${file}: lines $1 words $2 bytes $3"
    cat -b -t "$file"
done

これは出力例のように動作するため、欠落しているファイルは自動的に無視されます。

おすすめ記事