這個問題在這里已經有了答案: 使用 awk 保存修改 7 個答案 3天前關閉。
目標
- 在檔案中搜索
Version欄位 - 只有第一個值被標記
Version - 將值增加
1
代碼
grep Version ./path/to/file | head -1 | awk -F. -v OFS=. '{$NF = 1 ; print}'
錯誤
進行了預期的更改,但未保存。所以我猜我必須進行行內更改?我知道我可以生成檔案并將其與原始檔案合并,但我寧愿采用不同的方法。任何改進建議將不勝感激。
uj5u.com熱心網友回復:
和的組合grep是反模式。不需要and ,因為它具有所有需要的功能。headawkgrepheadawk
也就是說,只需遵循以下答案:
awk -i inplace -F. -v OFS=. \
'!done && /Version/ {$NF = 1; done = 1} 1' \
./path/to/file
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/488844.html
