当前位置: 首页 > news >正文

shell编程语言---sed

目录

sed(流编辑)

格式

命令

选项

实战


sed(流编辑)

是一种在线的,非交互的编辑器,他一次处理一行内容。处理时,把当前处理的行存储在缓冲区中,称为"模式空间",接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。sed主要用来自动编辑一个或多个文件;简化对文件的反复操作。

格式

sed 选项 命令 文件sed 选项 -f 脚本 文件返回值
不管对错都是0,只有才语法报错的时候才是非0

命令

d #删除 sed -r '/root/d' passwd
s #替换 sed -r ‘s/^root/aofa/g’ passwd
r #读文件 sed -r '/root/r 1.txt' passwd
w #写文件 sed -r '/root/w 1.txt' passwd
a #追加   sed -r 'a123' passwd #添加多行内容,换行前使用\
i #插入   sed -r '2iaaa' passwd
c #替换整行 sed -r '2caaa' passwd
n #获取下一条命令 sed -r '/root/{n;d}' passwd
! #反向选择 sed -r '2,$!d' passwd
e(;) #多重编辑 sed -r -e '1,3d' -e '4s/^root/rooot/g' passwd

选项

-r #使用扩展正则表达式
-i #直接对内容进行修改

实战

删除配置文件中#号注释行

sed -r '/^#/d' /etc/vsftpd/vsftpd.conf

修改文件

sed -ri '$a\chroot_local_user=YES' /etc/vsftpd/vsftpd.confsed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config

添加注释

sed -ri '2,6s/^/#/' a.txtsed -ri '2,6/(.*)/#\1/' a.txtsed -ri '2,6/.*/#&/' a.txt #&直接使用.*的内容不需要加括号

sed中使用外部变量

var=1111 #定义变量sed -ri "1a$var" /etc/hosts #追加变量sed -ri "\$a$var" /etc/hosts

http://www.dtcms.com/a/498969.html

相关文章:

  • iframe实战:跨域通信与安全隔离
  • 购物网站的建设意义html可视化编辑软件
  • Bootstrap 字体图标
  • PVE 9.0 定制 Debian 13 镜像 支持 Cloud-Init 快速部署虚拟机【模板篇】
  • 长春建站模板搭建高端品牌包包都有哪些
  • ai周公解梦抖音快手微信小程序看广告流量主开源
  • 【无标题】大模型-高效优化技术全景解析:微调 量化 剪枝 梯度裁剪与蒸馏 下
  • 自动化信息交付:深度解析AI驱动的每日简报系统架构与实现
  • 做微信公众号第三网站男女做视频观看网站
  • 定时任务Quartz原理详解
  • Rethinking SSIM-Based Optimization in Neural Field Training
  • rocketmq和kafka的区别之顺序消费
  • 套路有*道龙激光-乐多刀销*游戏程序系统方案
  • Angular 2 数据显示
  • 如何快速做单页面网站怎么查网站建设是哪家公司
  • 外国网站备案网站板块设置
  • 从 ClickHouse 到 StarRocks 存算分离: 携程 UBT 架构升级实践
  • 云手机 三角洲行动跑刀
  • Java 反射机制深度解析:从对象创建到私有成员操作
  • c++|表达最值的更好方法|clamp
  • Altium Designer(AD24)File文件功能总结
  • 【EE初阶 - 网络原理】应用层协议(下)
  • Pyinstaller - Python桌面应用打包的首选工具
  • PHP编程语言选择
  • 太原市做网站专业团队广告语
  • 桂林设计单位资质升级网站手机怎么建网站
  • k8s问题详解1:k8s集群上传文件过大导致413 Request Entity Too Large(请求文件实体过大)
  • 计算机毕业设计:Python农业数据可视化分析系统 气象数据 农业生产 粮食数据 播种数据 爬虫 Django框架 天气数据 降水量(源码+文档)✅
  • 怎么做一个链接网站东莞直播app软件开发定制
  • VSCode - 设置MSYS2终端