Я хотел бы переписать последнее поле (всего 2 поля) последней строки файла со значением -9. Я использую эту команду:Заменить последнее поле в последней строке с помощью awk
awk 'END{$2=-9}1' file.txt > new_file.txt
, но он не работает (замена не производится). Почему это? Есть идеи?
Спасибо!
Условие блока END обрабатывается после последней строки последнего входного файла. $ 0, $ 1, $ 2, ... пуст в вашем блоке END, вы можете проверить его, напечатав $ 0 и $ 1, $ 2. –
Если ваш файл большой и несжатый, тогда вы должны рассмотреть утилиту unix ['dd'] (http://en.wikipedia.org/wiki/Dd_%28Unix%29). –