誰でもこの問題を解決する方法を提案できますか?ファイルがあり、一致する行に最初に表示されるパターンを動的値に置き換えたいとします。ここでのパターンはですas
。
ソースファイル:
a b c as aa as
as b d f aa sa
df as kf as df
ターゲットファイル:
a b c 1 aa as
2 b d f aa sa
df 3 kf as df
ベストアンサー1
交換モードは毎回変わるので、これはおそらくもう少し奇妙なことです。
awk 'BEGIN { needle=1 } /as/ { $0=gensub( /as/, needle, 1, $0 ); needle=needle+1} { print } ' /path/to/input
上記は以下に適用されます。GNU Awk 4.1.3, API: 1.1 (GNU MPFR 3.1.4, GNU MP 6.1.0)