gpt4 book ai didi

sed - 如何使用 sed 将一个字符的前 n 次出现替换为另一个字符

转载 作者:行者123 更新时间:2023-12-04 22:32:34 27 4
gpt4 key购买 nike

我的文件中的文本行的值填充为零。我想用空格替换所有前导零,但最多只能替换 7 次。

00000002:   <text>

将上面的改成下面的

       2:   <text>

我有 sed 脚本

s/^0/ /;: loop s/ 0/  /;t loop

它替换所有的零。

线

00000000:   <text>

改为

        :   <text>

我愿意

       0:   <text>

如果 sed 循环能够在 6 次循环后停止,就会发生这种情况。

如何将 sed 脚本更改为在 6 (n) 次循环后停止。

是的,我可以暴力破解并放入 6 个版本的 s/0//

最佳答案

好吧,这可能是作弊,我不确定它是否适用于您所有的极端情况:

sed 's/^0/ /;s/0:/x:/;: loop s/ 0/  /;t loop;s/x:/0:/'

实际上,更好的是:

sed 's/^0/ /;: loop s/ 0/  /;t loop;s/ :/0:/'

关于sed - 如何使用 sed 将一个字符的前 n 次出现替换为另一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20639015/

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