Linux中的sed行末/前一行/后一行追加字符

Linux中的sed行末/前一行/后一行追加字符

 更新时间:2023年12月27日 15:40:53   作者:刘瑾言  
这篇文章主要介绍了Linux中的sed行末/前一行/后一行追加字符,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

目录
  • sed行末/前一行/后一行追加字符
  • linux sed命令
    • 常用选项(OPTIONS)
  • 总结

    sed行末/前一行/后一行追加字符

    sed命令
    sed “/string/s/.*/&ttt/” file 匹配行后面追加字符串
    sed “4i\ttt” file 第四行的前面加一行
    sed “4a\ttt” file 第四行后面加一行
    sed -e “s/aaa/bbb/g” -e “s/bbb/ccc/g” 多个命令拼接
    sed “4d” file 删除第四行
    sed -i “4d” file 在文件里面修改需要加上i
    sed -n “4,$p” file 打印第四行到末尾行
    sed “4s/aaa/bbb/” file 将第四行的aaa替换为bbb
    sed -i ‘$a \aaaa’ file 在文末新增一行aaaa

    linux sed命令

    sedstream editor的简称,也就是流编辑器。

    可以接受来自文件或者来自管道的流。

    其语法格式为:

    sed OPTIONS... [SCRIPT] [INPUTFILE...]

    常用选项(OPTIONS)

    • -n 使用安静silent模式。在一般sed的用法中,所有来自stdin的内容一般都会被列出到屏幕上。但如果加上-n参数后,则只有经过sed特殊处理的那一行(或者动作)才会被列出来
    • -e 直接在指令列模式上进行 sed 的动作编辑
    • -f 直接将 sed 的动作写在一个文件内,-f filename则可以执行filename内的sed命令
    • -r 让sed命令支持扩展的正则表达式(默认是基础正则表达式)
    • -i 直接修改读取的文件内容,而不是由屏幕输出

    实例:

    假如我们有文件foxinbox.txt, 内容如下:

    Knox in box.
    Fox in socks.
    Knox on fox in socks in box.
    Socks on Knox and Knox in box. Fox in socks on box on Knox.

    1、替换字符串:

    sed 's/old_string/new_string/flags'  filename.txt

    note:默认情况下, sed 命令只处理每一行的第一个匹配字符。 如果需要全部匹配的话,加上g参数即可。表示全局替换

    note:替换每一行的第n次匹配字符。后面添加数字即可,数字表示第n次匹配。add a number flag such as 12, etc.:

    例如只匹配第二次出现的box

    sed -i  's/1883/8883/' file.json

    将file.json文件中的1883字符串替换为8883

    查找file.json文件中 url字符串所在的行,只打印行号

    line=$(grep -n "url" file.json | busybox awk -F ":" '{print $1}')
    echo $line

    将filename文件中,字符串”url”所在的一整行替换为this is replace line

    sed -i '/url/c\ this is replace line'  filename

    这个文件有非常多的:作为分隔符,我们想更加直观地查看,

    sed 's/:/\t/g' /etc/passwd

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:

    • linux 中sed命令实现删除文件的任意列(操作代码)
    • Linux命令sed(流编辑器)的用法详解
    • Linux sed工具的使用及工作原理
    • Linux sed命令的使用
    • Linux使用sed命令替换字符串教程


    • Linux
    • sed
    • 行末
    • 一行
    • 字符

    相关文章

    • 开启Selinux遇到的坑及解决

      这篇文章主要介绍了开启Selinux遇到的坑及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教 2024-02-02

    • Linux中mv命令的高级用法示例

      这篇文章主要给大家介绍了关于Linux中mv命令的高级用法示例,文中通过示例代码介绍的非常详细,对大家学习或者使用Linux具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧 2019-05-05

    • Ubuntu Server 18.04.5 LTS服务器版安装配置图解教程

      Ubuntu分为桌面版(desktop)和服务器版(Server),下面为大家介绍服务器版本Ubuntu Server 18.04.5 LTS的详细安装过程,需要的朋友可以参考下 2021-01-01

    • centos 6.9 升级glibc动态库的详细过程

      glibc是gnu发布的libc库,即c运行库,glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。这篇文章主要介绍了centos 6.9 升级glibc动态库的详细过程,需要的朋友可以参考下 2019-11-11

    • Linux下用netstat查看网络状态、端口状态

      这篇文章主要介绍了Linux下用netstat查看网络状态、端口状态的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 2016-12-12

    • CentOS7配置阿里云yum源的方法代码

      这篇文章主要介绍了CentOS7配置阿里云yum源的方法代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 2018-09-09

    • CentOS使用EPEL源的方法步骤

      本篇文章主要介绍了CentOS使用EPEL源的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 2017-11-11

    • Ubuntu18.04.2下安装 RTX2080 Nvidia显卡驱动的方法

      这篇文章主要介绍了Ubuntu18.04.2下安装 RTX2080 Nvidia显卡驱动的方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下 2019-07-07

    • win7中VMware安装CentOs7搭建Linux环境教程

      这篇文章主要为大家详细介绍了win7中VMware虚拟机安装CentOs7搭建Linux环境教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 2016-11-11

    • centos7.2搭建nginx的web服务器部署uniapp项目

      这篇文章主要介绍了centos7.2搭建nginx的web服务器部署uniapp项目,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 2019-10-10

    最新评论

    版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
    文章名称:《Linux中的sed行末/前一行/后一行追加字符》
    文章链接:https://zhuji.vsping.com/196612.html
    本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。