【发布时间】:2021-11-20 19:18:03
【问题描述】:
你好,我需要帮助才能用 ssh 和 sed 替换文件的一行。
问题如下我有一个字符串例如:
我的字符串 = 1234
关键是 = 之后并不总是 1234,所以我无法替换该行。
sed -i 's/mystring =/mystring=1234/g' file.ini
当我运行它时,会发生两件事:
- mystring = 12341234(添加数字)
- mystring = 123412345(不要删除,留在那里)
如果变量 (sed -i 's/mystring=/mystring=1234/g' file.ini)被执行了两次以上,它所做的就是在末尾加上数字。
这就是我需要替换整行的原因,如果它完成超过 1 次,您会看到它始终保持不变,如果不同,请将其更改为命令中设置的值。
已经非常感谢你了。
【问题讨论】:
-
请在您的问题中添加示例输入(无描述、无图像、无链接)以及该示例输入所需的输出(无评论)。
-
您好,您好,问题已描述,并通过我传递的示例,您还需要什么?
-
你想做什么?用不同的行替换以 mystring 开头的行?
s/^mystring =.*/your new line content/。我看不到“数字是如何附加的”?或者“我无法替代,因为结局不同”。请澄清 -
嗯,如果(mystring =)后面有数字的话,我这里举个例子,你可以把$var换成数字。
标签: sed