【问题标题】:Deleting String using sed使用 sed 删除字符串
【发布时间】:2017-05-28 20:49:36
【问题描述】:

我正在尝试使用 sed 删除文件中的特定字符串。

test.txt 包含

123
456
789
111
1
000136

例如,我只需要删除文件中的 1 文本。我尝试使用命令

sed '/1/d' test.txt

输出将是

456
789

我如何只能使用 sed 删除 1?有什么办法吗?

谢谢!

【问题讨论】:

    标签: unix sed scripting


    【解决方案1】:

    您的示例的问题是,sed 中使用的模式匹配包含1 字符的所有行。

    改为调整模式:sed '/^1$/d' test.txt

    这将只匹配包含单个字符的行,即1

    这不会匹配包含额外空格的行!

    阅读更多关于正则表达式(以及特殊字符 ^$)的信息: https://www.gnu.org/software/sed/manual/html_node/Regular-Expressions.html

    【讨论】:

    • 嗨。谢谢!明白了
    猜你喜欢
    • 2020-11-03
    • 1970-01-01
    • 2011-03-07
    • 1970-01-01
    • 1970-01-01
    • 2012-04-09
    • 1970-01-01
    • 2020-04-17
    • 2015-05-08
    相关资源
    最近更新 更多