如何使用sed删除具有一位数而不是双位数的行
我有这条线如何使用sed删除具有一位数而不是双位数的行,sed,Sed,我有这条线 sed -i '/Total number 1/d' /tmp/test.txt 这将删除行 Total number 1 但它也删除了, Total number 11 Total number 12 Total number 13 如何将其设置为仅删除单个数字?在末尾添加一个美元符号sed-I'/Total number 1$/d'/tmp/test.txt 此外,如果要删除任何单个数字,请替换1:sed-i'/Total number[0-9]$/d'/tmp/tes
sed -i '/Total number 1/d' /tmp/test.txt
这将删除行
Total number 1
但它也删除了,
Total number 11
Total number 12
Total number 13
如何将其设置为仅删除单个数字?在末尾添加一个美元符号
sed-I'/Total number 1$/d'/tmp/test.txt
此外,如果要删除任何单个数字,请替换1:sed-i'/Total number[0-9]$/d'/tmp/test.txt
最后,如果数字不一定在行尾,当找到行尾或非数字时,也可以使用模式结束:
sed-i-E'/Total number[0-9]($|[^0-9])/d'/tmp/test.txt
在末尾添加一个美元符号sed-i'/Total number 1$/d'/tmp/test.txt
此外,如果要删除任何单个数字,请替换1:sed-i'/Total number[0-9]$/d'/tmp/test.txt
最后,如果数字不一定在行尾,当找到行尾或非数字时,也可以使用模式结束:
sed-i-E'/Total number[0-9]($|[^0-9])/d'/tmp/test.txt
精确且通用的解决方案是:
sed '/\b[[:digit:]]\b/d'
\b
代表一个
确保上述命令对您有效后,请传递
-i
选项,因为它将有效地更改您的输入文件。精确且通用的解决方案是:
sed '/\b[[:digit:]]\b/d'
\b
代表一个
确保上述命令对您有效后,请传递-i
选项,因为它将有效地更改您的输入文件。一个“字尾”标记也应该有效:/Total number[0-9]\>/d
一个“字尾”标记也应该有效:/Total number[0-9]\>/d