Awk Find And Replace Fields Values

In awk, you can find and replace values in specific fields using the sub() function.

The sub() function has the following syntax:

sub(regex, replacement, target)
  • regex is a regular expression that defines the pattern to search for in the target.
  • replacement is the string that will replace the pattern in the target.
  • target is the variable or expression that the function will operate on.

Here’s an example of how you can use the sub() function to find and replace values in fields:

awk '{sub(/old_value/,"new_value",$field_number); print}' file.txt

This command will find and replace old_value with new_value in the field_number field of each line in the file.txt file. The result will be printed to the standard output.

Note that you can use the gsub() function to perform a global find and replace, replacing all occurrences of the pattern in the target. The gsub() function has the same syntax as sub().

Leave a Comment