menu
書いてる野郎
orebike@gmail.com
これができると Vim との組み合わせでパワフルになる
指定した幅で文字列に改行を挟み込んで表示上折る。
出力が横に長大な場合これを使うと読みやすくなる・・・かも?
文字数指定で折る
$ echo "1234567890"|fold -w 5 12345 67890
単語区切りで折る。sオプションをつけるとスペースの区切りでも折れるようになる。
$ echo "123 4567890"|fold -sw 5 123 45678 90
1スタート10までなら
$ seq 10 1 2 3 4 5 6 7 8 9 10
始まりをズラして -5 スタート 5までなら
$ seq -5 5 -5 -4 -3 -2 -1 0 1 2 3 4 5
連番の間隔を指定するなら
$ seq 1 2 10 1 3 5 7 9
フォーマット指定して出力する。これは printf の指定ができるようだ。 ゼロ埋めで欲しいなら
$ seq -t %05g 10 00001 00002 00003 00004 00005 00006 00007 00008 00009 00010
必要な分だけゼロ埋めなら
$ seq -w 10 01 02 03 04 05 06 07 08 09 10
各連番の区切りを設定する。デフォルトは改行 これをスペース4つ区切りにしてみると
$ seq -s " " -t "\n" 10 1 2 3 4 5 6 7 8 9 10
こうなる。コマンドラインでは最終(↑なら10の後)に改行が入って欲しいので、終端の文字列を指定している。
先頭から指定行抜き出すにはheadコマンドを使う。先頭3行を抜き出すには
head -3
と書く
パイプで組み合わせてよく使う。
ls -l|head -3
cat hoge|sort
k
オプションを付けて指定
cat hoge|sort -k 2,4
この場合なら第二フィールドから第四フィールドをキーに使ってソートする
r
オプションを付けて指定
cat hoge|sort -r