位置: IT常识 - 正文
推荐整理分享sed命令 批量编辑文本文件(sed多个命令匹配条件格式),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:sed批量修改文件内容,sed命令批量替换,sed命令用法,sed命令用法,sed命令批量替换,sed命令大全,sed批量修改文件内容,sed多个命令,内容如对您有帮助,希望把文章链接给更多的朋友!
sed命令来自英文词组“stream editor”的缩写,其功能是用于利用语法/脚本对文本文件进行批量的编辑操作。sed命令最初由贝尔实验室开发,后被众多Linux系统集成,能够通过正则表达式对文件进行批量编辑,让需要重复的工作不再浪费时间。
语法格式:sed 参数 文件名
常用参数:
-e使用指定脚本来处理输入的文本文件-f使用指定脚本文件处理输入的文本文件-h显示帮助信息-i直接修改文件内容,而不输出到终端-n仅显示脚本处理后的结果-r支持扩展正则表达式-V显示版本信息参考示例
查找指定文件中带有某个关键词的行:
[root@linuxcool ~]# cat -n File.cfg | sed -n '/root/p'20rootpw --iscrypted $6$c2VGkv/8C3IEwtRt$iPEjNXml6v5KEmcM9okIT.Op9/LEpFejqR.kmQWAVX7fla3roq.3MMVKDahnv0l/pONz2WMNecy17WJ8Ib0iO140pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty替换指定文件中某个关键词成大写形式:
[root@linuxcool ~]# sed 's/root/ROOT/g' File.cfg………………省略输出信息………………读取指定文件,删除所有带有某个关键词的行:
[root@linuxcool ~]# sed '/root/d' File.cfg ………………省略输出信息………………读取指定文件,在第4行后插入一行新内容:
[root@linuxcool ~]# sed -e 4a\NewLine File.cfg #version=RHEL8ignoredisk --only-use=sdaautopart --type=lvm# Partition clearing informationNewLine………………省略部分输出信息………………读取指定文件,在第4行后插入多行新内容:
[root@linuxcool ~]# cat File.cfg | sed -e '4a NewLine1 \> NewLine2 \> NewLine3 '#version=RHEL8ignoredisk --only-use=sdaautopart --type=lvm# Partition clearing informationNewLine1NewLine2NewLine3clearpart --none --initlabel# Use graphical installgraphical………………省略部分输出信息………………读取指定文件,删除第2-5行的内容:
[root@linuxcool ~]# cat -n /etc/passwd | sed '2,5d' 1root:x:0:0:root:/root:/bin/bash6sync:x:5:0:sync:/sbin:/bin/sync7shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown8halt:x:7:0:halt:/sbin:/sbin/halt………………省略部分输出信息………………读取指定文件,替换第2-5行的内容:
[root@linuxcool ~]# sed '2,5c NewSentence' File.cfg #version=RHEL8NewSentence# Use graphical installgraphicalrepo --name="AppStream" --baseurl=file:///run/install/repo/AppStream# Use CDROM installation mediacdrom………………省略部分输出信息………………指定读取某个文件的第3-7行:
[root@linuxcool ~]# sed -n '3,7p' File.cfgautopart --type=lvm# Partition clearing informationclearpart --none --initlabel# Use graphical installgraphical与该功能相关的Linux命令:crudini命令 配置ini格式文件gedit命令 GNOME桌面的文本编辑器let命令 执行一个或多个表达式db_load命令 加密信息并生成数据库文件comm命令 比较两个已排过序的文件fmt命令 编排文本文件echo命令 输出字符串或提取后的变量值uniq命令 去除文件中的重复内容行column命令 格式化内容为多列格式rmdir命令 删除空目录文件上一篇:cpio命令 复制文件到归档包(cp命令复制系统文件/etc/profile)
友情链接: 武汉网站建设