
次のようにコマンドを実行し、awkを介してパイプします。
mycommand | awk '{print $1,tolower($3),$4}
これにより、次のような結果が得られます。
fred.o: t .abcdefg
fred.o: u .rstuvwxy
fred.o: t .defghi
fred.o: t .jklmnop
fred.o: d abcdefg
fred.o: d zyxwvuts
ご覧のように、3番目の列には前に「.」が含まれることもありますが、必ずしもそうではありません。
awk
3番目の列の先行する「.」を削除するには、コマンドをどのように変更しますか?たとえば、私の出力は次のようになります。
fred.o: t abcdefg
fred.o: u rstuvwxy
fred.o: t defghi
fred.o: t jklmnop
fred.o: d abcdefg
fred.o: d zyxwvuts
答え1
mycommand | awk '{sub(/^\./, "", $4);print $1,tolower($3),$4}'