首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux批量替换某种类型文件字符串-sed和grep命令使用

今天在修改rpm打包spec配置文件时,遇到一个问题就是:需要将100个左右源代码spec配置文件Release一行发布版本号使用宏变量%{_release}进行替换。    ...Linux下批量替换多个文件字符串简单方法。 用sed命令可以批量替换多个文件字符串。...sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录` 例如:我要把mahuinan替换为huinanma,执行命令sed -i "s/mahuinan/huinanma...大小多少 -rl /usr/aa` sed -i "s/大小多少/日月水火/g" `grep 大小多少 -rl ./` 参考了这两篇文章: 1、Linux批量替换多个文件字符串 Linux批量替换多个文件字符串...2、Linux shell 批量替换多个文件字符串 Linux shell 批量替换多个文件字符串 接 3、SED与AWK学习笔记 SED与AWK学习笔记

5.5K20
您找到你想要的搜索结果了吗?
是的
没有找到

命令行编辑器 sed 基础用法总结

当处理文本时,sed 当前处理行存储在临时缓冲区,称为“模式空间”,然后 sed 命令对缓冲区内容进行处理,完成后缓冲区内容输出到标准输出,接着处理以下行,直到文件尾部。...函数 sed 命令可以使用函数 函数 功能 a 新增字符串到下一行 c 取代 n1,n2 之间行 d 删除 n1,n2 之间行 i 插入字符串到上一行 p 打印指定列 s 替换指定字符串为另一个指定字符串...行替换和显示 下面展示了 2 到 5 行替换为 ’No 2-5 line’ nl /etc/passwd | sed '2,5c No 2-5 line' 下面展示了只显示文件 5-7 行方法...sed ’s/要被取代字串/新字串/g’ 这个命令字符串替换成了另一个指定字符串。 8. 多点编辑 上面的命令先执行了查找,后执行了替换命令,名执行了打印命令 p。...nl /etc/passwd | sed -e '3,$d' -e 's/bash/blueshell/' -e 参数指示了多点编辑,即先删除了第 3 行到文件末尾,然后剩余行 bash 替换为

59840

sed入门详解教程 原

例子1: sed –n ‘4s/hello/A/’ message 说明:第4行hello字符串替换为A,其它行如果有hello也不会被替换。...例子2: sed –n ‘2,4s/hello/A/’ message 说明:第2-4行hello字符串替换为A,其它行如果有hello也不会被替换。...3、子命令c 子命令c是表示把指定行内容替换为自己需要行内容。 例子1: sed ‘c A’ message 说明:message文件中所有的行内容都分别替换为A行内容。...例子2: sed ‘1,2c A’ message 说明:message文件1-2行内容替换为A,注意这里说1-2行所有的内容只替换为一个A内容,也就是1-2行内容编程了一行,定址如果连续就是这种情况...例子3: sed ‘1,2c A\nA’ message 说明:message1-2行内容分别替换为了A,需要在替换内容上手动加换行\n,这样当然也可以一行内容替换为多行内容。

1.4K20

linux中最为常用三大文本(grep,sed,awk)处理工具

默认不会直接修改源文件数据,而是会将数据复制到缓冲区,修改也仅限于缓冲区数据 3. sed 与 vi 区别 vi 采用是交互式文本编辑模式,你可以用键盘命令来交互性地插入、删除或替换数据文本...] sed ‘s/old/new/’ test 匹配每一行第一个old替换为new sed 编辑器只替换每行第 2 次出现匹配模式 root@ubuntu-admin-a1:/home/sedTest...test [每个字符进行映射替换] 转换命令会对 inchars 和 outchars 值进行一对一映射,即 inchars 第一个字符会被转换为 outchars 第一个字符, 第二个字符会被转换成...反选,打印没有匹配到 hani sed -n ‘s/old/new/gp’ test 只打印匹配替换行 6.7 sed w 所选行写入文件 w 命令用来文本中指定行内容写入文件 格式如下...,,,:/home/linuxtechi:/bin/bash root@Linux-world:~# Bash脚本美元($)符号视作特殊字符,用于指定一行或者一个单词结尾。

6K10

shell脚本快速入门之-----正则三剑客之二sed用法大全!!!

在使用 sed 命令进行替换操作时需要用到 s(字符串替换)、c(整行/整块替换)、y(字符转换)命令选项,常见用法如下所示。...sed 's/the/THE/' test.txt //每行第一个the 替换为 THE sed 's/l/L/2' test.txt //每行第 2 个 l 替换为 L sed 's/the.../THE/g' test.txt //文件所有the 替换为 THE sed 's/o//g' test.txt //文件所有o 删除(替换为空串) sed 's/^/#/' test.txt...'3,5s/the/THE/g' test.txt //第 3~5 行所有 the 替换为 THE sed '/the/s/o/O/g' test.txt //包含the 所有行 o 都替换为...'s/1324/aaaa/' a.txt > b.txt 首先sed是有一个默认输出,也就是所有文件内容都输出,加上命令替换,那么输出结果就是下面这样

1.5K30

Linux常用命令09 - sed

在处理文本文件时,通常需要在一个或多个文件查找和替换文本字符串sed 是一个流编辑器。 它可以对文件和输入流(如管道)执行基本文本操作。...让我看一些示例,说明如何使用 sed 命令搜索文件文本,并使用其中一些最常用选项和标志替换文件文本。...例如,搜索所有的3位数字,并将它们替换为您将使用字符串数字: sed -i 's/\b[0-9]\{3\}\b/number/g' file.txt number Foo foo foo foo /...: ls file.txt file.txt.bak 递归查找和替换 有时,您希望递归地搜索目录包含字符串文件,并替换所有文件字符串。...这可以通过使用 find 或 grep 等命令递归地查找目录文件并将文件名管道化为 sed 来实现。 下面的命令递归搜索当前工作目录文件文件,并将文件名传递给 sed。 find .

2K30

【linux命令讲解大全】081.sed:功能强大流式文本编辑器

sed替换标记 g # 表示行内全面替换。 p # 表示打印行。 w # 表示把行写入一个文件。 x # 表示互换模板块文本和缓冲区文本。...y # 表示把一个字符翻译为另外字符(但是不用于正则表达式) \1 # 子串匹配标记 & # 已匹配字符串标记 sed元字符集 ^ # 匹配行开始,如:/^sed/匹配所有以sed开头行。...sed用法实例 替换操作:s命令 替换文本字符串sed 's/book/books/' file -n选项 和 p命令 一起使用表示只打印那些发生替换行: sed -n ‘s/test/TEST.../p’ file 直接编辑文件 选项-i ,会匹配file文件每一行所有book替换为books: sed -i 's/book/books/g' file 全面替换标记g 使用后缀 /g 标记会替换每一行所有匹配...命令执行顺序对结果有影响。如果两个命令都是替换命令,那么第一个替换命令影响第二个替换命令结果。

18610

linux实战(一)

-e :直接在命令列模式上进行 sed 动作编辑; -f :直接 sed 动作写在一个文件内, -f filename 则可以运行 filename 内 sed 动作; -r :sed 动作支持是延伸型正规表示法语法...此例,对第1到第20行进行处理,you被保存为标签1,如果发现youself,则替换为your。  &      保存查找串以便在替换引用 s/my/**&**/  符号&代表查找串。...替换s命令 $ sed 's/test/mytest/g' example 在整行范围内把test替换为mytest。如果没有g标记,则只有每行第一个匹配test被替换成mytest。...如例子所示,第一条命令删除1至5行,第二条命令用check替换test。命令执行顺序对结果有影响。如果两个命令都是替换命令,那么第一个替换命令影响第二个替换命令结果。...从文件读入r命令 $ sed '/test/r file' example file里内容被读进来,显示在与test匹配行后面,如果匹配多行,则file内容显示在所有匹配行下面。

2.2K10

shell_正则_变量_tr_awk_sed_cut(1)

sed实例 以行为单位新增/删除 以行为单位替换与显示 数据搜寻并显示/删除 数据搜寻并执行命令 数据搜寻并替换 多点编辑 直接修改文件内容 cut -(d f) 2.编写脚本/root/bin...】三个任何一个,就可以光标移动到最底下那一行。在这个模式, 可以提供查找、读取、存盘、替换字符、离开vi、显示行号等动作则是在此模式完成!...ifconfig用法 ifconfig ens33 |grep -o -o : 表示只输出符合re规则字符串 egrep=grep -E 用于显示文件符合条件字符串 一般使用: ifconfig...搜索/etc/passwd,找到root对应行,执行后面花括号一组命令,每个命令之间用分号分隔,这里把bash替换为blueshell,再输出这行: nl /etc/passwd | sed...-e表示多点编辑,第一个编辑命令删除/etc/passwd第三行到末尾数据,第二条命令搜索bash替换为blueshell。

1K20

Sed三剑客入门与进阶

,可以执行多条sed命令 -f 或--file=:#以选项中指定script文件来处理输入文本文件 -i :#用于sed修改结果直接修改读取数据文件,而不有...\/local\/bin/g' WeiyiGeek.自定义定界符 修改写入i命令实例: -i选项可以直接修改源文件替换删除字符串,也能进行备份将要修改文件; #采用-i 选项 【.bak文件后缀...#示例1.命令执行顺序对结果有影响,如果两个命令都是替换命令,那么第一个替换命令影响第二个替换命令结果。...# text.txt第三行得60换成90; #直接编辑文件-i选项,会匹配file文件每一行book替换为books(直接写入到源文件) $ sed -i 's/book/books/g'...从文件读入:r命令 描述:file里内容被读进来,显示在与test匹配行后面,如果匹配多行,则file内容显示在所有匹配行下面 #示例1.读取file文件到并且插入到查找到test字符串后面

3.1K10

Linux 流编辑器 sed 详解

使用 s 命令时,sed 编辑器会在一行一行地读取文件 file,并在每行查找文本 srcStr,如果找到了,则将该处 srcStr 替换为 dstStr。.../ 字符为界定符,用于分隔字符串sed 编辑器允许使用其他字符作为替换命令字符串分隔符): sed 's!/bin/bash!/BIN/BASH!' /etc/passwd # 使用 !...作为字符串分隔符 默认情况下,替换命令只会替换掉目标文本在每行第一次出现地方。若想要替换掉每行中所有匹配地方,可以使用替换标记 g。替换标记放在编辑命令末尾。...etc/passwd 文件每行第 2 个 root 替换为 ROOT; 2)g :替换所有匹配到文本: sed 's/root/ROOT/g' /etc/passwd 这行命令 /etc/passwd...文件 root,全部替换为 ROOT; 3)p :打印与替换命令中指定模式(srcStr)相匹配行: sed 's/root/ROOT/p' /etc/passwd 执行这命令,会在 STDOUT

1.5K10

Linux命令(3)——sed命令

处理时,把当前处理行存储在临时缓冲区,称为“模式空间”(pattern space),接着用sed命令处理缓冲区内容,处理完成后,把缓冲区内容送往屏幕。接着处理下一行,直到文件末尾。...-e ,--expression=:脚本文件作为sed命令来执行; -f ,--file=:直接sed动作写在一个文件内...bin:/bin:/bin/sh …(下面忽略)… 如果想删除匹配字符串,使用如下命令: [b3335@MIC ~]$ nl /etc/passwd | sed 's/root//g' (3)数据查找并替换.../;p;q}' 1 root:x:0:0:root:/root:/bin/blueshell 4.6多点编辑 一条sed命令,删除/etc/passwd第三行到末尾数据,并把bash替换为blueshell...:x:1:1:daemon:/usr/sbin:/bin/sh -e表示多点编辑,第一个编辑命令删除/etc/passwd第三行到末尾数据,第二条命令搜索bash替换为blueshell。

3.2K20

Linux命令(3)——sed命令

处理时,把当前处理行存储在临时缓冲区,称为“模式空间”(Pattern Space),接着用sed命令处理缓冲区内容,处理完成后,把缓冲区内容送往屏幕,接着处理下一行,直到文件末尾。...bin:/bin:/bin/sh …(下面忽略)… 如果想删除匹配字符串,使用如下命令: [b3335@MIC ~]$ nl /etc/passwd | sed 's/root//g' (3)数据查找并替换...他有点像这样: sed 's/被取代字串/新字串/g' (4)数据搜寻并执行命令 搜索/etc/passwd,找到root对应行,执行后面花括号一组命令,每个命令之间用分号分隔,这里把bash.../;p;q}' 1 root:x:0:0:root:/root:/bin/blueshell 4.6多点编辑 一条sed命令,删除/etc/passwd第三行到末尾数据,并把bash替换为blueshell...:x:1:1:daemon:/usr/sbin:/bin/sh -e表示多点编辑,第一个编辑命令删除/etc/passwd第三行到末尾数据,第二条命令搜索bash替换为blueshell。

1.7K20

Linux云计算运维之Shell

~ B 判断字符串A是否不包含能匹配B表达式字符串 动作(Action): 格式化输出 流程控制语句 sed命令 sed主要是用来数据进行选取、替换、删除、新增命令,我们看看命令语法...-f 脚本文件名 :从sed脚本读入sed操作,和awk命令-f非常类似, -r 在sed修改结果直接修改读取数据文件,而不是由屏幕输出 动作 : a : 追加,在当前行后添加一行或多行...格式为“行范围 s/ 旧字串/新字串/g“ (和vim替换格式类似) 对sed命令要注意,sed所做修改并不会直接改变文件内容(如果是用管道符接收命令输出,这种情况连文件都没有),而是把修改结果只是显示到屏幕上...替换为空。...如果能替换为空,证明num1值为数字 #如果不能替换为空,证明num1值为非数字。

5.6K30
领券