sed
sed 命令 - 流编辑器
sed(Stream Editor)是一个强大的流式文本编辑器,能够对文本进行过滤和转换。它特别适合在脚本中批量处理文本文件,是自动化运维的必备工具。
文本处理

⌨️ 命令语法

sed [选项] '命令' 文件

⚙️ 常用参数

-i直接修改文件内容(in-place)
-e执行多个 sed 命令
-n安静模式,只输出处理过的行
-r使用扩展正则表达式

💡 实战示例

  • $ sed 's/old/new/g' file.txt
    替换文件中所有的 old 为 new(仅输出不修改文件)
  • $ sed -i 's/foo/bar/g' file.txt
    直接替换文件中的内容
  • $ sed -i '/^$/d' file.txt
    删除文件中的空行
  • $ sed -n '5,10p' file.txt
    只打印第5到第10行
  • $ sed -i 's/^#//' config.conf
    去掉行首的注释符 #

🔔 温馨提示

使用 sed -i 会直接修改原文件,建议先在测试文件上验证命令。macOS 上需要用 sed -i "" 语法。

🔗 相关命令