作業日記@HatenaBlog

各種の作業メモ

vi awk覚書


:.,.!awk '{for (i=1;i<=5;i++) print "192.168.1."i"\tpc"i}'

192.168.1.1 pc1
192.168.1.2 pc2
192.168.1.3 pc3
192.168.1.4 pc4
192.168.1.5 pc5

                                      • -

viエディタでshコマンドを使う。

:.!awk '{printf "\%s\t\%s\n",$1,$2}'

.! … 現在行(.)を!でつないでstdinする。
\%s … %の直前でESC(\)することに注意。
\n … 改行

もちろんESC(\)はunix上のバックスラッシュのこと。
FreeBSDtcshにおける操作なのでbashとは異なるかも。

1〜10までループ(csh)

set i=1
while ( $i <= 10 )
echo $i
@ i= $i + 1
end