首页
学习
活动
专区
圈层
工具
发布

linux 使用sed替换文本

背景:在linux 服务器上,有时我们想通过命令行的方式替换掉文件中的某个字符串,可以使用sed命令。...具体的命令详情可参考:http://www.runoob.com/linux/linux-comm-sed.html 本例中我们想在linux服务器替换掉如下的 targetHost 的ip 11.125.52.27...:8080 image.png 命令行:sed -i 's/"targetHost":[^,]*/"targetHost":"11.125.26.134:8080"/' config.json ----...-i 可以直接对文本文件进行操作; sed 's/要被取代的字串/新的字串/g', 其中 g 代表全部替代匹配到的内容; 上述命令中,要被取代的字符串【"targetHost":[^,]*】,该正则表达式解释为...:以 "targetHost": 开始,到不是 , 的所有字符;替换为【"targetHost":"11.125.26.134:8080"】; 以上完整命令即可做到替换掉文本中的ip和端口。

7.3K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    (转载)Linux之sed匹配第N个进行替换

    文本: aa 88 bb 88 88 cc 88 88 替换第一个88为--: sed '0,/88/s//--/' file sed ':a;N;$!...第二个句子是通过循环把文本全部读进pattern space 然后只替换第一个。 替换第N[3]个88为--: sed '/88/{x;s/^/./;/^\.\{3\}$/{x;s/....第二个命令和上面第一个其实是一样的原理,全部读入文本后统一替换第3个匹配的内容。 替换最后一个匹配的88为--: sed ':a;/\n88/!...一直到匹配到最后一个88的行,继续读取到末行时执行替换,N 因为没有下一行可读,所以会自动中止命令,因为没有 -n 参数会打印 pattern space 里的内容到屏幕,所以就不会再执行后面的 ba...» 本文链接:(转载)Linux之sed匹配第N个进行替换 » 转载请注明来源:刺客博客

    10.3K40

    linux下sed正则表达式匹配批量替换文件中的内容

    基本语法 sed的命令格式:sed [options] 'command' file(s) sed的脚本格式:sed [options] -f scriptfile file(s) 参数 参数 完整参数...替换hello成world,并打印到屏幕上 sed 's/hello/world/' hello.txt s 表示替换 hello 表示匹配的字母,是正则表达式 world 表示需要替换成的字母...这里只是替换缓存区内的内容,并不改变文件里的内容。 从开始位置替换,并加上回车 sed 's/^hello/world\n/' hello.txt 执行结果: ?...替换文件中的内容,并写到文件里 sed -i 's/o/ABC/' hello.txt 执行结果: 执行cat查看文件内容: ? 可以看到虽然替换了,但是只替换了第一个被匹配的到内容。...如果想全部替换到字母'o',就需要使用参数'g'。 全部替换,,并写到文件里 sed -i 's/o/ABC/g' hello.txt ? 执行后,全部的'o',都被替换了。

    7.5K10

    linux 修改文件内容sed,linux下通过sed命令直接修改文件内容

    linux下通过sed命令直接修改文件内容 sed是实现对流的编辑。通常,我们使用sed可以实现内容的编辑后然后保存成另外的一个文件,如果正确的话,才写入到源文件。...其实很简单,只需要一个-i 参数就可以了。...比如,我想替换文件中的properties 为property ,可以使用sed ‘s/properties/property/g’ build.xml这种方式,其实并没有修改build.xml文件的内容...如果想直接修改源文件,而没有这样的过程,可以用下面的命令sed -i ‘s/properties/property/g’ build.xml这样,就直接修改了build.xml文件注:还有一个更简单的方法...sed -in-place -e ‘s/abc/cba/g’ build.xml 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/164466.html原文链接:https

    9.3K20

    用 Linux sed 命令替换智能引号的操作方法

    用 sed 替换智能引号 计算机并不是打字机。当你按下键盘上的一个键时,你不是在按一个带有印章的控制杆。你只是按下一个按钮,向你的计算机发送一个信号,计算机将其解释为一个显示特定预定义字符的请求。...知道这些“秘密”代码意味着你可以使用 sed 这样的命令以编程方式替换它们。任何版本的 sed 都可以,所以你可以使用 GNU sed 或 BSD sed,甚至是 Busybox sed。.../fixquotes.sh test.txt $ cat test.txt 'Single quote' "Double quote" 安装 sed 如果你使用的是 Linux、BSD 或 macOS,...那么你已经安装了 GNU 或 BSD 的 sed。...这是原始 sed 命令的两个独特的重新实现,对于本文中的脚本来说,它们在功能上是一样的(不过并不是所有的脚本都是这样)。 在 Windows 上,你可以用 Chocolatey 安装 GNU sed。

    2.5K30

    Linux中使用sed命令替换字符串小结 原

    Linux中使用sed命令替换字符串小结 最近写了几个小脚本用到了sed命令,学了一下,顺便记下 sed替换的基本语法为: 复制代码 代码如下: sed 's/原字符串/替换字符串/' 单引号里面...: 复制代码 代码如下: sed 's?原字符串?替换字符串?'.../替换第2行 sed '$s/原字符串/替换字符串/g' //替换最后一行 sed '2,5s/原字符串/替换字符串/g' //替换2到5行 sed '2,$s/原字符串/替换字符串/g' //替换...2到最后一行 替换样式可以多个在同一条命令中执行,用分号”;”分隔,例如: 复制代码 代码如下: sed 's/^/添加的头部&/g;s/$/&添加的尾部/g' //同时执行两个替换规则 sed...处理过的输出是直接输出到屏幕上的,要保存可以将输出重定向,或者使用参数”i”直接在文件中替换: 复制代码 代码如下: sed -i 's/原字符串/替换字符串/g' filename //替换文件中的所有匹配项

    4.7K10

    9.5 sed(下)

    而在加了 -i 参数后,sed -i '1,20'd test.txt 会把文件内容删除更改 sed命令 指定内容删除 sed -i '/sshd/'d test.txt //加了...-i 参数后,会直接修改文件内容 [root@hf-01 sed]# sed -i '/sshd/'d test.txt //会直接修改文件内容,删除sshd这一行 [root@hf-01 sed...]# sed命令 查找替换 功能 sed 命令的查找替换和vim的查找替换相似 sed '1,5s/nologin/lala/g' test.txt //在1到5行中,把nologin替换成lala...]# 正则表达式中查找替换 sed -r '1,5s/ro+/r/g' test.txt //将文件的1到5行中的ro+替换成r 因为有特殊符号,所以得使用 -r 参数 (在使用cat test.txt...查找替换总结: 若里面有特殊符号,则需要脱义 - 只能先使用-ri参数,而不能-ir参数(-r参数脱义特殊符号,-r参数直接修改文件内容) - 或者在特殊符号前面使用 \ sed命令 第一段和最后一段替换位置

    1.2K60

    Linux下find、awk、sed、grep命令的例子

    %-8s %-10s\n",$1,$4}' log.txt 2 a 3 like This's 10 orange,apple,mongo # 设置变量-v参数...,如果原有元素为非数字则进行运算时为0 awk -va=1 '{print $1,$1+a}' log.txt 2 3 3 4 This's 1 10 11 # 将awk命令存为脚本保存,使用-f参数作为允许脚本...:文本替换 # old.txt中的old_abc换为new_abc,s表示替换,g表示每行中找到的字符都需要被替换,否则只替换每行第一次出现的字符, '1,2s'表示第一行到第二行的所有行 # sed不能在原有文本基础上进行替换...,所以必须生成新的文件new.txt sed "1,2s/old_abc/new_abc/g" old.txt > new.txt # 删除行号范围内指定的行 sed -i "1,2d" old.txt...# 删除模式匹配的行 sed -i "/abc/d" old.txt # 删除与替换同时进行,加上-e参数,替换old_abc为new_abc,并且删除第二行 sed -i -e "s/old_abc

    2.6K10

    Linux环境下进程的程序替换

    进程程序替换谈的就是如何让子进程执行一个全新的程序。 一、替换函数 为了让子进程执行新的程序,Linux系统为我们提供了一些相关函数:exec系列函数,如下图所示。...提供这么多函数的目的是满足在不同的使用场景下的使用需求,但他们的核心逻辑是一样的。 让我们先以execl函数为例,解释这些参数都有哪些含义。...三、程序替换与环境变量间的关系 1.介绍其他参数的意义并总结 exec系列的函数,他们的核心逻辑是一样的,但各参数不同,原因是为满足在不同的使用场景下的使用需求。...2.自定义环境变量 经过上述总结,其他的参数读者大概已经有数,那说半天程序替换和环境变量在哪有直接联系呢?...,使用时具体用哪个,完全看使用环境选择合适参数 3.execve系统调用 上面的exec*系列的函数其实都是基于execve系统调用做的封装,由于系统自带的程序替换execve功能单一,于是C库通封装给出了六个在不同场景下使用的

    36710

    Linux 命令 | sed

    Linux 命令 sed 命令解析 sed 是一种流编辑器,主要用来对文本进行替换、删除、新增、选取等操作。...sed 的一般形式如下: sed [options] 'command' filename options是可选参数 command是要执行的操作命令 filename是要处理的文件名。...I'm studying sed. 现在要用 sed 命令将其中的第一行 Hello world! 替换为 Hi there!...源码演示: sed '1s/Hello/Hi there/' test.txt Linux 命令 sed 命令注意事项 sed 命令一般不会对原始文件进行修改,而是将修改后的结果输出到标准输出流中,如果需要修改原始文件...sed 命令支持多种操作符,如查找、替换、删除、插入等操作。 sed 命令可以通过正则表达式进行模式匹配,以实现更灵活的操作。

    1.9K20

    linux工具——sed整理

    Hi, 我是小萝卜算子 既然重温了linux工具——grep文本处理器, 怎能少了sed.........一、介绍 sed是Linux中最常用的"文本处理工具"之一,常规情况下,每次匹配一行内容到模式空间,经过处理变化之后,输出结果 针对个别特殊情况,比如想连续操作多行数据,可使用hold空间以及t,b分支控制输出...(sed --help提示) option:sed 使用参数 script:筛选条件/编辑命令 input-file: 操作的文件 三、常用参数 --option -e:多点编辑 -f:从文件读取命令...:非,类似linux工具——神奇的正则表达式 中的!...r,w 读写(我用的比较少) --content operate(内容操作) s:替换 替换掉匹配的内容,与linux工具——vim文本编辑器整理中命令行模式的替换类似,基本用法:s/src/dest

    10.1K20
    领券