Linux系统Shell脚本第六章:文件三剑客之sed
一、文本三剑客之sed
1. 基本用法
sed[选项]... '{自身脚本语法};....' [input file...]
2、sed脚本语法及命令
①sed脚本语法:地址+sed自己脚本命令,地址即范围例如全文或第一行,第一行至第三行等范围
②sed脚本命令:
p 将内容打印到屏幕,使用时关闭自动打印功能,-n选项
q 到指定的内容即退出,例如打印到第三行直接退出
IP 内容忽略大小写,使用时关闭自动打印功能,-n选项
d 删除指定内容
a 在指定位置添加内容
c 替换指定内容
~ 步进,0~2,2个间隔,1~2,1个间隔 seq 10 |sed -n '0~2p'每间隔2个打印一次
3. sed选项
① -n 选项,sed默认有自动打印功能,-n选项是关闭打印功能,一般配合脚本命令p使用
②-r 选项,开启扩展正则表达式
③-i 选项,在文件中添加内容,可以在-i是加.bak后缀备份修改的文件。例如 sed -i.bak a.txt会在同目录下生成一个a.txt.bak文件
4. sed的查找替换使用
格式:sed '/可使用正则表达式选择范围/'s/查找内容/替换内容/g g表示全文,固定格式的///可以用###等符号替换
注意:查找内容可使用正则表达式,替换内容不可使用正则表达式
5. 后向引用
( )内的按顺序标为123 ,引用时\1调用第一个()的内容,\n表示调用第n个()的内容。
.*表示任意长度字符不管是什么字符
6. 变量
使用sed查询是可以直接调用变量,注意必须用“ ”号或者俩个双引号,单引号不识别变量
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App