我有一個用例,我需要搜索並替換文件中最後一次出現的字符串,並將更改寫回文件。下面的情況是該用例的簡化版本:反向文件使用tac和sed
我正在嘗試將文件反轉,使一些更改將其反轉回來並寫入文件。我嘗試了下面的代碼片段此:
tac test | sed s/a/b/ | sed -i '1!G;h;$!d' test
測試與內容的文本文件:
a
1
2
3
4
5
我期待這個命令不會更改文件的順序,但它實際上已經扭轉了內容:
5
4
3
2
1
b
我怎樣才能使替代以及保留文件的順序?
請參閱:[Bash:如何使用sed替換文件中最後一次出現的內容?](https://stackoverflow.com/q/10106292/3776858)或https://www.google.com/# q = bash + replace + last + occurrence + in +文件 – Cyrus
這裏的區別是我需要寫回文件。 – seriousgeek