2つの列を持つファイルがあります。
path/path/target1.target2 column2
awkを使って印刷したいです。
column1 column2 target1 target2
修正するために次のように試しましたが、元の列が失われました。
$ awk '{gsub("\\..*","", $(gsub(".*/","", $1))); gsub(".*_","", $1); print $0}'
target1 column2
どうすればいいですか?この行動を説明できますか?
ベストアンサー1
方法は次のとおりですawk
。
$ awk '{
split($1,parts,".");
sub(".*/","",parts[1]);
print $1, $2, parts[1], parts[2]
}' file
path/path/target1.target2 column2 target1 target2
なぜあなたのものがうまくいかないのかエマ・ルーオが説明するこれは、値を変更しても$1
期待どおりに印刷できないためです。