gpt4 book ai didi

linux - 如何使用 sed 替换匹配列表

转载 作者:太空宇宙 更新时间:2023-11-04 04:43:29 26 4
gpt4 key购买 nike

我想使用 sed 但使用序列替换文本文件。

示例.txt:

1. 2000000
2. 2000000
3. 2000000
4. 2000000

我想要这样的结果:

1. 2000000
2. 1900000
3. 1800000
4. 1700000

我有这种肮脏的方式:

for i in {2000000..1700000..-100000}; do sed -i -e "0,/2000000/! {0,/2000000/ s/2000000/$i/}" example.txt; done

还有更好的主意吗?

最佳答案

使用 awk 可能会更容易:

awk '{sub("2000000",2000000-(100000*c++))}1' file

计数器c没有为第一行定义,因此数字不会改变。在下一行,计数器增加,值减少。

关于linux - 如何使用 sed 替换匹配列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52942079/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com