awkのgsub()とsub()の違いは、置換回数の制約になります。

gsub():置換対象文字列があった場合は全て置換する

sub():最初の置換対象文字列のみ1回置換

スポンサーリンク

gsub()のサンプルコード

gsub()の動きをサンプルコードで確認してみたいと思います。
下記のようにin.txtがあったとします。

下記のようにgsub()を使って、1フィールド(列)目の”-“を”/”に置換して、print出力しています。

実行すると、全ての”-“が”/”に置換されています。

スポンサーリンク

sub()のサンプルコード

sub()の動きをサンプルコードで確認してみたいと思います。
in.txtについては、gsub()の時と同じファイルにしています。

今度は、下記のようにsub()を使って、1フィールド(列)目の”-“を”/”に置換して、print出力しています。

実行すると、最初の”-“のみ”/”に置換されています。

基本的にはgsub()を使う場合の方が多い印象がありますが、違いを抑えておいて使い分けて行くと良いと思います。

スポンサーリンク