特定の行の特定の列の数値を切り取ろうとしています。私が使用して列を取得するには:gsubでawkの変数の値を変更して表示するには?
executionTime="120"
しかし、私は数値でちょうど興味:
awk '/REGEX1/{for(i=1;i<=NF;++i)if($i~/REGEX2/)print $i}' $file
を必要に応じて出力されます。私は
awk '/REGEX1/{for(i=1;i<=NF;++i)if($i~/REGEX2/)print $i}' $file | awk '{gsub(/[^0-9]/,""); print}')
または
awk 'BEGIN{sedcmd="sed 's/[^0-9]//g'"} /REGEX1{for(i=1;i<=NF;++i)if($i~/REGEX2/) print $i | sedcmd}' tmpfile
を使用している場合はそれが動作します。しかし、アクションブロック内でsub()、gsub()またはgensub()を使用しようとするとすぐに失敗します。たとえばで:
awk '/REGEX1/{for(i=1;i<=NF;++i)if($i~/REGEX2/)print gsub(/[^0-9]/,"",$i)$i}' $file
出力は7
私が間違って何をやっているのですか?
gawk -V
GNU Awk 4.1.3, API: 1.1 (GNU MPFR 3.1.5, GNU MP 6.1.1)
は正直にあなたはそれが複雑になっていると言って、サンプル入力 –
Krischaを提供しています。だから、私たちに知らせてもらうたびに推測するのではなく、同じように助けてくれるように、サンプルのインプットと予想されるアウトプットを投稿してください。 – RavinderSingh13