Чтобы изменить любое вхождение -9
в третьем столбце вашего файла на +9
:
$ awk '$3==-9 {$3="+9"} 1' OFS='\t' file
ZAR ZEC ZDA
-9 2 3
4 8 +9
5 6 7
$ 3 == - 9
выбирает строки, для которых третий столбец равен -9
. Для этих строк присвоение $ 3 = "+ 9"
изменяет этот столбец на +9
. 1
- это загадочное сокращение awk для print-the-line. Наконец, OFS = '\ t'
указывает awk печатать вывод, используя табуляцию в качестве разделителя полей.
Использование GNU awk (Linux):
awk -i inplace '$3==-9 {$3="+9"} 1' OFS='\t' file
Использование BSD / OSX awk:
awk '$3==-9 {$3="+9"} 1' OFS='\t' file >tmp && mv tmp file