linux sed -i 命令

linux sed命令使用详解 阅读详情

Linux sed命令是利用script来处理文本文件。

(一)、选项参数

sed -i function

-i :直接修改读取的文件内容,而不是输出到终端。

动作说明: [n1[,n2]]function
n1, n2 :不见得会存在,一般代表『选择进行动作的行数』,举例来说,如果我的动作是需要在 10 到 20 行之间进行的,则『 10,20[动作行为] 』
function:
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p :列印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

(二)sed -i 直接修改文件内容(危险动作)

sed 可以直接修改文件的内容,不必使用管道命令或数据流重导向! 不过,由於这个动作会直接修改到原始的文件,所以请你千万不要随便拿系统配置来测试! 我们还是使用文件 regular_express.txt 文件来测试看看吧!

regular_express.txt 文件内容如下:

[root@www ~]# cat regular_express.txt 
runoob.
google.
taobao.
facebook.
zhihu-
weibo-

1、利用 sed 将 regular_express.txt 内每一行结尾若为 . 则换成 !

[root@www ~]# sed -i 's/\.$/\!/g' regular_express.txt
[root@www ~]# cat regular_express.txt 
runoob!
google!
taobao!
facebook!
zhihu-
weibo-

2、利用 sed 直接在 regular_express.txt 最后一行加入 # This is a test:

[root@www ~]# sed -i '$a # This is a test' regular_express.txt
[root@www ~]# cat regular_express.txt 
runoob!
google!
taobao!
facebook!
zhihu-
weibo-
# This is a test

由於 $ 代表的是最后一行,而 a 的动作是新增,因此该文件最后新增 # This is a test!

sed 的 -i 选项可以直接修改文件内容,这功能非常有帮助!举例来说,如果你有一个 100 万行的文件,你要在第 100 行加某些文字,此时使用 vim 可能会疯掉!因为文件太大了!那怎办?就利用 sed 啊!透过 sed 直接修改/取代的功能,你甚至不需要使用 vim 去修订!

 

(三)sed -i 常见用法(直接对文本文件进行操作的)

替换掉每行的第一个字符串

sed -i 's/原字符串/新字符串/' file

替换掉所有的字符串 sed -i 's/原字符串/新字符串/g' file

去掉 “行首” 带“@”的首字母@

sed -i 's/^@//' file

特定字符串的行前插入新行

sed -i '/特定字符串/i 新行字符串' file

特定字符串的行后插入新行

sed -i '/特定字符串/a 新行字符串' file

特定字符串的删除

sed -i '/字符串/d' file

参考:

http://www.runoob.com/linux/linux-comm-sed.html

https://www.cnblogs.com/ev-zhk/p/4277023.html

Linux系列:sed -i 用法 sed -i 's/old/new/' /app/filename 将filename每行第一次出现的88用字符串--替换,然后将该文件内容输出到标准输出 sed -i 's/old/new/g' /app/filename 附加g选项告诉sed执行全局替换 ... 阅读详情

相关推荐

告别零碎资料!手把手教你搞定ASTER L1T数据的预处理全流程(附ENVI实操)

本文详细介绍了ASTER L1T数据的预处理全流程,包括数据获取、质量检查、ENVI实操步骤(辐射定标、大气校正、几何精校正)以及热红外波段深度处理。特别适合地信领域初学者和研究人员,帮助快速掌握ASTER L1T数据处理技巧,提升定量反演研究效率。

weixin_30385925的博客 356

linux sed命令 -i,Linux sed命令

sed修改文件中的内容sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 文件所在目录`(千万注意这个符号,是最左上角那个符号不是单引号)eg:修改php.ini中的register_globals = On为Offsed -i "s/register_globals = On/register_globals = Off/g" `grep "register_gl...

weixin_36028920的博客 4468

绝缘体上硅(SOI) vs 传统硅片:5个关键性能对比及适用场景分析

本文深入对比了绝缘体上硅(SOI)与传统硅片在功耗、速度、隔离性等5个关键性能维度的差异,并分析了各自适用场景。SOI技术凭借其独特的埋氧层结构,在低功耗、高频应用和极端环境下展现出显著优势,特别适合移动设备、汽车电子和航天应用。

weixin_30335575的博客 555

sed -i命令详解

[root@www ~]# sed [-nefr] [动作] 选项与参数: -n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。 -e :直接在...

cihongmo6452的博客 1075

半导体设备隔振必看:如何用天棚阻尼PID控制实现VC-C级振动抑制(含SIMULINK模型)

本文深入探讨了在半导体精密制造中,如何运用天棚阻尼PID控制算法实现VC-C级振动抑制。通过构建高保真单自由度仿真模型,详细解析了从算法原理、SIMULINK实现到参数整定的全链路方案,并针对谐波扰动提供了陷波滤波器设计方法,为工程师提供了从仿真到实践的完整主动隔振技术指南。

pz89012345的博客 538

【TC3xx芯片】TC3xx芯片电源管理系统PMS详解

本文主要介绍了TC3xx芯片的电源管理系统(PMS),重点探讨了供电模式选择、电源监控机制及电源管理模式。文章首先分析了4种供电模式及其硬件配置方式,详细说明了3.3V单电源供电模式的特点;其次阐述了Primary和Secondary两种电源监控机制,包括阈值配置和异常中断处理;最后重点讲解了CPU和系统的电源管理模式,特别对Standby模式及其进入/退出条件进行了详细说明。文章以软件开发视角解析了TC3xx芯片的电源管理功能,为ECU低功耗设计提供了技术参考。

redparrot2008的博客 1531

【Linux命令】sed -i命令详解

【Linux命令】sed -i命令详解 一. 使用说明 [root@www ~]# sed [-nefr] [动作] 选项与参数: -n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。 -e :直接在命令列模式上进行 sed 的动作编辑; -f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作;

清宵尚温的博客 1万+

【脑电绘图教程 2】使用Brainstorm进行脑电处理及源定位

Brainstorm 是一个开源应用程序,支持MEG、EEG、fNIRS、ECoG、深度电极和其他电生理学的数据分析,尤其用于MEG、EEG的源定位。Brainstorm的主要优点是其简单直观的图形界面,不需要进行任何编程,即可上手MEG、EEG分析,此外,它还支持多种数据类型(基本上EEGLab支持的,它都支持),并且具有数据批量处理功能,可以很方便的分析自己的数据。

qq_40735196的博客 1万+

Linux新手必学:sed -i命令入门指南

的Linux环境练习,无需配置本地系统就能直接运行命令。我试过他们的在线终端,响应速度很快,特别适合新手做各种命令行实验。遇到问题还能随时清空重来,完全不用担心把系统搞乱。有点抽象,但跟着示例多练几次就会发现,它其实是处理文本最趁手的工具之一。记住三个要点:先测试再修改、注意备份文件、复杂操作分步验证,很快你就能熟练运用啦!今天我用最直白的语言,分享这个工具的入门心得。的核心功能是直接修改文件内容,无需手动打开文件。测试效果,确认无误后再执行实际修改。注意:如果担心误操作,可以先不加。s/旧内容/新内容/

CrystalwaveEagle34的博客 467

国产化操作系统shell常用脚本

国产操作系统常用脚本:统信、麒麟。

Reyn_观极 598

ArcGIS实验教程——实验二十五:大型商场选址经典案例

本实验基于ArcGIS平台进行商场选址分析,综合考虑道路、居民点、停车场和已有商场四个影响因素。通过缓冲区分析建立各要素的影响范围(道路50米、居民点100米、停车场100米、已有商场500米),采用叠加分析中的相交和擦除运算确定最优选址区域。实验建立了区位评价体系,通过属性赋值(1/-1)和联合运算生成综合评价结果,并实现分级可视化显示。注意事项包括距离参数设置对结果的影响以及正确选择空间分析工具。该流程为商业选址提供了科学的GIS解决方案。

智慧空间实验室 1万+

linux脚本中sed -i,Linux 中常用的sed命令

sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反...

weixin_39527911的博客 505

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

带有-i选项的sed命令在Linux上执行成功,但在MacOS上失败了

为什么带有-i选项的sed命令在Linux上执行成功,但在MacOS上执行失败

luoyz23的博客 997

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

linux中sed -i命令修改文件内容、在文件中插入行、删除文件中删除行

文章目录0.sed -i与sed1.修改文件内容2.在文件中插入行3.在文件中删除行4.使用find查找文件,并用 | xargs传输文件名给sed命令 0.sed -i与sed sed -i 就是直接对文本文件进行操作的,如果单纯是sed那么就只是把处理结果输出到命令行,实际上文件内容没有变化。 动作说明: [n1[,n2]]function n1, n2 :不见得会存在,一般代表『选择进行动作的行数』,举例来说,如果我的动作是需要在 10 到 20 行之间进行的,则『 10,20[动作行为] 』 -i

qq_42731705的博客 1万+

Linux常用命令sed -i 文本替换(常应用:修改linux<华为openEuler>repo源)

sed -i。

xzzteach的博客 844

linux echo sed i,Linux echo, sort, sed 等一些命令总结

linux echo, sort, sed是初学linux shell script 的一些常用的命令。基本上来说,如果能够掌握了这些命令,我们就能写出一些不错的linux脚本。以下是我遇到的以下常用的echo,sort, sed等命令的一些应用;1. echo -e:BW="f25\nf50\nf75\nf100\n";如果直接echo $BW, 结果是f25\nf50\nf75\nf100...

weixin_35038173的博客 305

linux下sed i命令作用(转载)

sed是一种流编编器,stream edit 它是文本处理中非常中的工具,能够完美的配合正则表达式便用,功物能不同凡响。 处理时,把当前处理的行存储在临时缓冲区(内存)中,称为”模式空间”( pattern space),接看用sed命令处理缓冲区中的内容,处理成后,把缓冲区的内容送往屏幕显示。 接着理下一行,这样不断重复,直到文件末。可使用了写入的命令,将内容更新。 定位行地址用于决定对哪...

zy103118的博客 1万+

linux 中sed命令的使用【常用如:sed -i】

【sed -i命令】 sed [-nefr] [动作] 【选项与参数】 -n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。 但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。 -e :直接在命令列模式上进行 sed 的动作编辑; -f :直接将 sed 的动作写在一个文件内, -f...

qq_15821725的博客 586

sed命令的作用linux,linux下sed i命令作用(转载)

sed是一种流编编器,stream edit 它是文本处理中非常中的工具,能够完美的配合正则表达式便用,功物能不同凡响。处理时,把当前处理的行存储在临时缓冲区(内存)中,称为”模式空间”( pattern space),接看用sed命令处理缓冲区中的内容,处理成后,把缓冲区的内容送往屏幕显示。接着理下一行,这样不断重复,直到文件末。可使用了写入的命令,将内容更新。定位行地址用于决定对哪些行进行编辑...

weixin_34731498的博客 747

linux脚本中sed -i,Linux Shell 脚本之sed命令详解

5.正则表达式元字符与grep一样,sed也支持特殊元字符,来进行模式查找、替换。不同的是,sed使用的正则表达式是括在斜杠线"/"之间的模式。如果要把正则表达式分隔符"/"改为另一个字符,比如o,只要在这个字符前加一个反斜线,在字符后跟上正则表达式,再跟上这个字符即可。例如:sed -n '\o^Myop' datafile元字符功能示例^行首定位符/^my/ 匹配所有以my开头的行$行尾定位...

weixin_42395426的博客 1220

linux命令sed -i s 一次替换两个值

下面例子的意思是,把文件中的所有的 ssid="任意字符" 替换成 ssid="新名字",把文件中的所有的 psk="任意字符" 替换成 psk="新密码"用正则表达式匹配文件中的内容 .表示除换行符以外的任意字符,*表示零次或多次,-i表示替换完成后写入原文件,-e表示替换完成后输出到控制台,不写入原文件;一次执行两个s替换指令,用;

ihchenchen的博客 1078
上一篇: 搜索引擎百度已死
下一篇: linux shell 转义字符
Man_In_The_Night
博客等级 码龄11年 114粉丝 177原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值