gsubを使用して列を分割するにはどうすればよいですか?AWK gsub関数を使用して列を分割する方法は?
以下は、2番目の列を2つに分割するサンプルファイルです。
> cat seq.txt
Hello/World /app/oracle/data/app4/trail/hb000003
Hello/World /app/oracle/data/app1/trail/gg000028
Hello/World /app/oracle/data/app1/trail/kk000111
Hello/World /app/oracle/data/app1/trail/kk000111
Hello/World /app/oracle/data/app3/trail/mw000021
Hello/World /app/oracle/data/app2/trail/pj000009
Hello/World /app/oracle/data/app1/trail/fx000276
Hello/World /app/oracle/data/app1/trail/fx000006
Hello/World /app/oracle/data/app1/trail/fx000006
Hello/World /app/oracle/data/app1/trail/fx000276
Hello/World /app/oracle/data/app1/trail/gt000005
Hello/World /app/oracle/data/app4/trail/xh000001
このように試してみました。しかし、gsubは正規表現を置き換えて読み込まないようです。
> cat seq.txt | awk -F" " '{gsub(".*/..",".*/.. ",$2)}1'
Hello/World .*/.. 000003
Hello/World .*/.. 000028
Hello/World .*/.. 000111
Hello/World .*/.. 000111
Hello/World .*/.. 000021
Hello/World .*/.. 000009
Hello/World .*/.. 000276
Hello/World .*/.. 000006
Hello/World .*/.. 000006
Hello/World .*/.. 000276
Hello/World .*/.. 000005
Hello/World .*/.. 000001
以下は私が期待しているものです。もちろん置換の
Hello/World /app/oracle/data/app4/trail/hb 000003
Hello/World /app/oracle/data/app1/trail/gg 000028
Hello/World /app/oracle/data/app1/trail/kk 000111
Hello/World /app/oracle/data/app1/trail/kk 000111
Hello/World /app/oracle/data/app3/trail/mw 000021
Hello/World /app/oracle/data/app2/trail/pj 000009
Hello/World /app/oracle/data/app1/trail/fx 000276
Hello/World /app/oracle/data/app1/trail/fx 000006
Hello/World /app/oracle/data/app1/trail/fx 000006
Hello/World /app/oracle/data/app1/trail/fx 000276
Hello/World /app/oracle/data/app1/trail/gt 000005
Hello/World /app/oracle/data/app4/trail/xh 000001
あなたが私に教えてくださいことはできますか? – CodeDevotion
あなたの '1'(または他の真理値)と同じことをしますが、誰かがすぐにスクリプトを読んで見落とす可能性は少し低くなります。私はそれを使った人の誰かからそれを突きつけた。 –
よろしいですか。ありがとう... – CodeDevotion