sed 是 Linux 中用于流式编辑文本的常用命令。本文从语法、常用选项、实用示例和排错方法入手,命令均使用 Bash 高亮并支持一键复制。
快速上手
sed -n '1,20p' file.txt
基本语法
sed [选项] [参数]
方括号表示可选内容。实际使用时不要输入方括号;多个选项通常可以合并,但应以本机 sed --help 或手册页为准。
常用选项
| 选项/子命令 | 作用 |
|---|---|
-n |
禁止默认输出 |
-i |
原地修改 |
-E |
扩展正则 |
-e |
添加脚本表达式 |
实用示例
示例 1
sed -n '1,20p' app.conf
复制上面的命令后,可先核对路径、文件名、用户和主机参数,再在终端执行。
示例 2
sed 's/foo/bar/g' input.txt
复制上面的命令后,可先核对路径、文件名、用户和主机参数,再在终端执行。
示例 3
sed -i.bak 's/^DEBUG=.*/DEBUG=false/' .env
复制上面的命令后,可先核对路径、文件名、用户和主机参数,再在终端执行。
查看帮助
sed --help
man sed
不同发行版或工具版本的参数可能略有差异。脚本化使用前,建议先用测试目录验证结果;涉及覆盖、删除、权限或服务状态的操作,应先备份并检查命令展开后的目标。
常见问题
提示 command not found 怎么办?
先确认命令是否安装,再用 command -v sed 查找路径,并通过发行版的软件包管理器安装缺失组件。
提示 Permission denied 怎么办?
检查当前用户、文件权限和父目录权限。只有确实需要系统权限时才使用 sudo,不要把扩大权限当作默认处理方式。
如何确认执行结果?
观察标准输出和错误输出,并运行 echo $? 查看上一条命令的退出状态;通常 0 表示成功,非 0 表示发生错误。
总结
掌握 sed 的核心语法、常用选项与退出状态,就能更稳定地完成流式编辑文本。建议把常用组合保存为个人速查表,并在自动化脚本中加入参数检查和错误处理。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...