sed - 用 sed 替换包含未知数字的字符串

标签 sed

使用 sed 我想编辑一个数字,但不知道它有多少位。

EX1. 
variableA = 34, variableB = 4

EX2.
variableA = 123, variableB = 22

我希望能够在不知道原始数字是多少的情况下更新这些变量中的任何一个。行的格式不会改变,但数值会改变。

理想情况下,这将是一个 s//表达式来替换数字分配

最佳答案

使用正则表达式进行替换即可实现此目的。不幸的是,你有一个问题和一个正则表达式。但无论如何:调整这些以将 42 替换为您真正的新值;我使用“,”或“$”来区分两个变量之间的差异:

对于变量A:

sed -e 's/= [0-9]\{1,\},/= 42,/'

对于变量B:

sed -e 's/= [0-9]\{1,\}$/= 42/'

关于sed - 用 sed 替换包含未知数字的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30294362/

相关文章:

bash - 使用 sed 的随机行

linux - 在 Linux 中替换大文本字符串

bash - 从目录中的所有文件中删除字符串

linux - 替换所有不包含匹配字符串的行

sed - 我想使用 sed 打印组的最后一行

regex - sed 4.2.2 中的数字匹配错误?

linux - 用它们的 md5 哈希值替换文件名

bash - Sed:获取以某个前缀开头的行

unix - 从字符串的第 n 次出现开始读取直到特定字符串

sed - grep : Find occurances of 3 consecutive alphabets