sig*_*l11 4 awk text-processing
我运行一个命令并将其通过 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
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,有时第三列包含一个前导“.”。但不总是。
如何修改我的awk
命令以摆脱领先的“。” 在第三列中是否存在?例如,我希望我的输出看起来像这样:
fred.o: t abcdefg
fred.o: u rstuvwxy
fred.o: t defghi
fred.o: t jklmnop
fred.o: d abcdefg
fred.o: d zyxwvuts
Run Code Online (Sandbox Code Playgroud)
mycommand | awk '{sub(/^\./, "", $4);print $1,tolower($3),$4}'
Run Code Online (Sandbox Code Playgroud)