仅替换匹配模式的第一个字符

仅替换匹配模式的第一个字符

我需要编写一个 sed 命令,该命令从文件中读取数据,并将每行中的第一个字符替换为 0,前提是该行中的第一个和第二个字符是数字(并保持其余行不变)。

答案1

^[0-9][0-9]您可以使用或查找以两位数字开头的行^[0-9]\{2\}

然后你可以使用 0 替换单个字符s/./0/

把它放在一起,

sed '/^[0-9][0-9]/ s/./0/' somefile

或者

sed '/^[0-9]\{2\}/ s/./0/' somefile

相关内容