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

只匹配文档中的一行,然后在Ubuntu上使用bash替换该行中的数字

在Ubuntu上使用bash替换一行中的数字,可以使用sed命令来实现。sed是一个流编辑器,可以用于对文本进行替换、删除、插入等操作。

以下是使用sed命令在Ubuntu上替换一行中的数字的示例:

代码语言:bash
复制
sed 's/[0-9]/replacement/g' file.txt

其中,[0-9]表示匹配数字的正则表达式,replacement表示要替换的内容,file.txt表示要操作的文件名。

例如,假设我们有一个名为example.txt的文件,内容如下:

代码语言:txt
复制
This is line 1.
This is line 2 with number 123.
This is line 3 with number 456.

如果我们想要将第二行中的数字替换为789,可以运行以下命令:

代码语言:bash
复制
sed '2s/[0-9]/789/g' example.txt

运行结果如下:

代码语言:txt
复制
This is line 1.
This is line 2 with number 789.
This is line 3 with number 456.

这样就将第二行中的数字替换为了789

需要注意的是,以上命令只会在输出中显示替换后的结果,并不会修改原始文件。如果需要直接修改原始文件,可以使用-i选项:

代码语言:bash
复制
sed -i '2s/[0-9]/789/g' example.txt

这样就会直接修改example.txt文件,将第二行中的数字替换为789

关于sed命令的更多用法和参数,请参考腾讯云文档中的《sed命令》

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

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

d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚; i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行); p :打印,亦即将某个选择的数据印出。...6.1.1 sed s 格式 s/pattern/replacement/flags flags 标记 功能 n 1~512 之间的数字 表示指定要替换的字符串出现第几次时才进行替换,例如,一行中有...] sed ‘s/old/new/’ test 匹配每一行的第一个old替换为new sed 编辑器只替换每行中第 2 次出现的匹配模式 root@ubuntu-admin-a1:/home/sedTest...] -n 选项会禁止 sed 输出,但 p 标记会输出修改过的行, 将二者匹配使用的效果就是只输出被替换命令修改过的行 root@ubuntu-admin-a1:/home/sedTest# sed...反选,打印没有匹配到 hani 的行 sed -n ‘s/old/new/gp’ test 只打印匹配替换的行 6.7 sed w 将所选的行写入文件 w 命令用来将文本中指定行的内容写入文件中 格式如下

6.1K10
  • Linux入门学习笔记二

    grep工具的功能其实还不够强大,grep实现的只是查找功能,而它却不能实现把查找的内容替换掉。以前用vim的时候,可以查找也可以替换,但是只局限于在文本内部来操作,而不能输出到屏幕上。...在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。...注意:‘s’ 就是替换的命令, ‘g’ 为本行中全局替换,如果不加 ‘g’ 只换该行中出现的第一个。...取代 sed -n '1,20s/old/new/g' test.txtsed '1,2c hi' test.txt ## 将第一二两行替换为hi 插入(目前的上一行) sed -i '$a bye...记得好像是) 替换匹配行中的某个字符串 sed -i '/匹配字符串/s/替换源字符串/替换目标字符串/g' filename awk AWK是一种处理文本文件的语言,是一个强大的文本分析工具。

    86910

    Linux下文本处理“三剑客”

    grep工具的功能其实还不够强大,grep实现的只是查找功能,而它却不能实现把查找的内容替换掉。以前用vim的时候,可以查找也可以替换,但是只局限于在文本内部来操作,而不能输出到屏幕上。...在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。...注意:‘s’ 就是替换的命令, ‘g’ 为本行中全局替换,如果不加 ‘g’ 只换该行中出现的第一个。...新增(目前的下一行) sed '1,2a sdg' test.txt ## 在一二两行后添加一行sgd 删除 sed -i '/匹配字符串/d' filename (注:若匹配字符串是变量,则需要...记得好像是) 取代 sed -i '/匹配字符串/s/替换源字符串/替换目标字符串/g' filename sed '1,2c hi' test.txt ## 将第一二两行替换为hi 插入(目前的上一行

    1.1K30

    Linux常用命令09 - sed

    在处理文本文件时,通常需要在一个或多个文件中查找和替换文本字符串。 sed 是一个流编辑器。 它可以对文件和输入流(如管道)执行基本的文本操作。...默认情况下一行一行地读取文件,只更改第一次出现的SEARCH_REGEX,当提供替换标志时,所有出现的情况都将被替换 INPUTFILE 要在其上运行命令的文件名 最好在参数周围加上引号,这样 shell...为了便于演示,我将使用以下文件 file.txt: 123 Foo foo foo foo /bin/bash Ubuntu foobar 456 如果省略了 g 标志,那么每行中搜索字符串的第一个实例将被替换...正如您可能已经注意到的,在前面的示例中,foobar 字符串中的子字符串 foo 也被替换了。 如果这不是想要的行为,请在搜索字符串的两端使用单词边界表达式(\b)。 这将确保部分词不匹配。...sed: grep -rlZ 'foo' . | xargs -0 sed -i.bak 's/foo/bar/g' 小结 虽然它看起来复杂和复杂,但实际上,用 sed 在文件中搜索和替换文本非常简单

    2.1K30

    Linux三剑客之sed

    然后,它执行为该行指定的所有操作,并在完成请求的修改之后的内容显示出来,也可以存放到文件中。完成了一行上的所有操作之后,它读取文件的下一行,然后重复该过程直到它完成该文件。...sed 默认读取整个文件并对其中的每一行进行修改。说白了就是一行一行的操作。我用sed主要就是用里面的替换功能,真的很强大。下面以实例,详细的说一下,先从替换开始,最常用的。...-r, --regexp-extended 在脚本中使用扩展正则表达式 10 -s, --separate 将输入文件视为各个独立的文件而不是一个长的连续输入 11 -u, --unbuffered...上面的例子意思是在第二行,到第八行之间,替换以zhang开头的行,用ying来替换,在5,到10间,用goodbay来替换dbus,并显示替换的行 1 # cat test | sed -n '2,8s...root:/bin/bash 注意:特殊匹配 1 匹配数字别忘了中括号外面还有一个中括号。

    84420

    Linux shell命令总结大全

    但是实际上在使用的时候,会遇到各种各样的问题,前几天我在我们的项目上需要做一个功能,根据进程名字杀死这个进程,下面是过程 1、我们正常需要的操作是 $ps |grep xxx $kill -9 xx...2、kill命令是常用的,但是用killall命令会更快 $killall -9 xxx 3、令我困扰的是我用的那个没有killall然后我做了下面的操作 adb shell ps |grep speech...root@ubuntu:~# echo $a hello,world root@ubuntu:~# vim文本编辑器 最基本用法 vi somefile.4 1 首先会进入“一般模式”,此模式只接受各种快捷键...常用快捷键 一些有用的快捷键(在一般模式下使用): a 在光标后一位开始插入 A 在该行的最后插入 I 在该行的最前面插入 gg 直接跳到文件的首行 G 直接跳到文件的末行 dd...查找关键字 :/you ## 效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个) 4 替换操作 :s/sad/bbb 查找光标所在行的第一个

    5.1K20

    【Linux】shell命令总结

    来自:良许Linux 01 前言 Linux shell命令应该算是非常入门的东西,但是实际上在使用的时候,会遇到各种各样的问题,前几天我在我们的项目上需要做一个功能,根据进程名字杀死这个进程,下面是过程...root@ubuntu:~# echo $a hello,world root@ubuntu:~# vim文本编辑器 最基本用法 vi somefile.4 1 首先会进入“一般模式”,此模式只接受各种快捷键...常用快捷键 一些有用的快捷键(在一般模式下使用): a 在光标后一位开始插入 A 在该行的最后插入 I 在该行的最前面插入 gg 直接跳到文件的首行 G 直接跳到文件的末行 dd...查找关键字 :/you ## 效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个) 4 替换操作 :s/sad/bbb 查找光标所在行的第一个...{java,js} 1 基本使用 查询包含hadoop的行 grep hadoop /etc/password grep aaa ./*.txt 2 cut截取以:分割保留第七段 root@ubuntu

    1.2K30

    Linux shell命令总结大全

    01 前言 Linux shell命令应该算是非常入门的东西,但是实际上在使用的时候,会遇到各种各样的问题,前几天我在我们的项目上需要做一个功能,根据进程名字杀死这个进程,下面是过程 1、我们正常需要的操作是...$ps |grep xxx $kill -9 xx 2、kill命令是常用的,但是用killall命令会更快 $killall -9 xxx 3、令我困扰的是我用的那个没有killall然后我做了下面的操作...root@ubuntu:~# echo $a hello,world root@ubuntu:~# vim文本编辑器 最基本用法 vi somefile.4 1 首先会进入“一般模式”,此模式只接受各种快捷键...常用快捷键 一些有用的快捷键(在一般模式下使用): a 在光标后一位开始插入 A 在该行的最后插入 I 在该行的最前面插入 gg 直接跳到文件的首行 G 直接跳到文件的末行 dd...查找关键字 :/you ## 效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个) 4 替换操作 :s/sad/bbb 查找光标所在行的第一个

    1.3K10

    ❤️肝下25万字的《决战Linux到精通》笔记,你的Linux水平将从入门到入魔❤️【建议收藏】

    ,y替换的是每一字母对应的单个字母 把data中的第一行至第三行中的a替换成A,b替换成B,c替换成C: sed '1,3y/abc/ABC/' data 示例: python@ubuntu:~/test...27gg 后15x 11、在第一行新增一行,在该行内输入“I am a student ” gg到第一行 O输入即可 说明:o是在当前行之后插入一行,O是在当前行之前插入一行 12、保存并退出 :wq...L 光标移动到这个屏幕的最下方那一行的第一个字符 G 移动到这个文档的最后一行(常用) nG n 为数字。...移动到这个文件的第 n 行。例如 20G 则会移动到这个文件的第 20 行(可配合 :set nu) gg 移动到这个文档的第一行,相当于 1G n n 为数字。...复制光标所在的那个字符到该行行尾的所有数据 p, P p 为将已复制的数据在光标下一行贴上,P 则为贴在光标上一行!

    2.3K10

    Linux 之 Vim 编辑器从基础到大成使用

    描述:我们也可以将使用y命令拷贝的字符串行来粘贴到文件中,常常是整行为单位; P(Max) #在光标所在行的上方粘贴 p(Min) #在光标所在行的下方粘贴 行与块模式 描述:v命令进入行模式+键盘上下键然后通过...bb, 仅替换aa 这个单词 # 针对于全文 :%s/aa/bb/g #将文档中出现的所有包含aa 的字符串中的aa 替换为bb :%s/aa/bb/gc #c将询问您是不是确定替换.将文档中全部包含...*//g #删除#之后的字符(实际上是替换) %s/$/sth/ #在行尾追加sth %s/\^M//g #替换掉dos换行符,\^M使用ctrl+v + Enter即可输入 # 在正则表达式中使用和符号括起正则表达式...ignorecase 查找到以后,再输入n 查找下一个匹配处, 输入N 反方向查找(不区分大小写) gd #查找与光标所在单词相匹配的单词, 并将 `光标停留的单词`在文档的非注释段中第一次出现这个单词的地方...非常值得学习: ctrl-x-l #在编辑模式中此命令快速补齐整行内容, 但是仅在本窗口中出现的文档中进行匹配.

    2K10

    Vim编辑器基础入门

    描述:我们也可以将使用y命令拷贝的字符串行来粘贴到文件中,常常是整行为单位; P(Max) #在光标所在行的上方粘贴 p(Min) #在光标所在行的下方粘贴 行与块模式 描述:v命令进入行模式+键盘上下键然后通过...bb, 仅替换aa 这个单词 #针对于全局 :%s/aa/bb/g #将文档中出现的所有包含aa 的字符串中的aa 替换为bb :%s/aa/bb/gc #c将询问您是不是确定替换.将文档中全部包含...ignorecase 查找到以后,再输入n 查找下一个匹配处, 输入N 反方向查找(不区分大小写) gd #查找与光标所在单词相匹配的单词, 并将 `光标停留的单词`在文档的非注释段中第一次出现这个单词的地方.... *(#) #当光标停留在某个单词上时, 输入这条命令表示查找与该单词匹配的下(上)一个单词....非常值得学习: ctrl-x-l #在编辑模式中此命令快速补齐整行内容, 但是仅在本窗口中出现的文档中进行匹配. ?

    1.8K20

    生信人的自我修养:Linux 命令速查手册(全文引用)

    升序 sort -k2,2nr file # 按第2列排序,且第2列是数字,降序 sort -u file # 先排序文件,然后去除相邻的重复行,只保留一条记录 sort file | uniq...:空格,制表符 sed 's/AA/BB/' file # 将文件中的AA替换成BB,只替换一行中第一次出现的AA,替换后的结果输出到屏幕 sed 's/AA/BB/g' file # 将文件中的所有...AA都替换成BB,替换后的结果输出到屏幕 sed -i 's/AA/BB/g' file # 将文件中的所有AA都替换成BB,直接更改文件的内容 sed '/CC/s/AA/BB/g' file# 只替换那些含有...,只处理匹配的行。...表达式与操作符 Awk 表达式的符号与 C 语言的类似,基本的表达式有数字,字符串,变量,字段,数组以及函数调用。变量无需声明,它们在首次使用时被初始化为null。

    4K40

    生信人的自我修养:Linux 命令速查手册

    升序 sort -k2,2nr file # 按第2列排序,且第2列是数字,降序 sort -u file # 先排序文件,然后去除相邻的重复行,只保留一条记录 sort file | uniq...:空格,制表符 sed 's/AA/BB/' file # 将文件中的AA替换成BB,只替换一行中第一次出现的AA,替换后的结果输出到屏幕 sed 's/AA/BB/g' file # 将文件中的所有...AA都替换成BB,替换后的结果输出到屏幕 sed -i 's/AA/BB/g' file # 将文件中的所有AA都替换成BB,直接更改文件的内容 sed '/CC/s/AA/BB/g' file# 只替换那些含有...,只处理匹配的行。...表达式与操作符 Awk 表达式的符号与 C 语言的类似,基本的表达式有数字,字符串,变量,字段,数组以及函数调用。变量无需声明,它们在首次使用时被初始化为null。

    7.4K22

    Linux系统开发: 学习linux三剑客(awk、sed、grep)(上)

    -C 除了显示符合范本样式的那一行之外,并显示该行前后指定几行的内容。 -b 在显示符合范本样式的那一行之外,并显示字节偏移量。...-x 只显示全列符合的列。 -y 此参数效果跟“-i”相同。 -o 只输出文件中匹配到的部分。....txt #或者直接使用-E参数指定使用正则表达式,则可不加转义 $ grep "[1-3][1-3]" 123.txt #与上面相同效果,也表示在123.txt中查找1-3之间数字出现两次的内容...,前面可加数字,表明第几个匹配位置 $ sed -i 's/bck/sh/' 123.txt 666.txt #替换123.txt、666.txt内的bck为sh,每行只替换一个 $ sed...#在123.txt的第8行到10行替换为一行hello 一行内执行多条命令 需用到选项参数-e/--expression= 以选项中的指定的脚本来处理输入的文本文件

    9.3K21

    linux学习第二十六篇:正则介绍,grep,sed,awk命令

    以前用vim的时候,可以查找也可以替换,但是只局限于在文本内部来操作,而不能输出到屏幕上。sed工具以及下面要讲的awk工具就能实现把替换的文本输出到屏幕上的功能了,而且还有其他更丰富的功能。...:/sbin/nologin PS:‘s’ 就是替换的命令, ‘g’ 为本行中全局替换,如果不加 ‘g’ 只换该行中出现的第一个。...把test.txt中出现的第一个数字和最后一个单词替换位置 ? 12. 把test.txt 中第一个数字移动到行末尾 ? 13....在test.txt 20行到末行最前面加 ‘aaa:’ ? awk命令 上面也提到了awk和sed一样是流式编辑器,它也是针对文档中的行来操作的,一行一行的去执行。...: sed ‘s/[A-Z]/\l&/g’ filename sed在文件中某一行最后添加一个数字 ?

    4.1K60

    linux实战(一)

    在Linux系统上,正则表达式通常被用来查找文本的模式,以及对文本执行“搜索-替换”操作和其它功能。....*\1' aa 如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*),这些字符后面紧跟着另外一个\1 ,\1也就是es,因为前面把es存储到了内存并默认标记为1了,找到就显示该行...$ sed -n 's/^test/mytest/p' example (-n)选项和p标志一起使用表示只打印那些发生替换的行。也就是说,如果某一行开头的test被替换成mytest,就打印它。...下一个n命令 $ sed '/test/{ n; s/aa/bb/; }' example 如果test被匹配,则移动到匹配行的下一行,替换这一行的aa,变为bb,并打印该行,然后继续。...保持和获取h命令和G命令 $ sed -e '/test/h' -e '$G example 在sed处理文件的时候,每一行都被保存在一个叫模式空间的临时缓冲区中,除非行被删除或者输出被取消,否则所有被处理的行都将打印在屏幕上

    2.2K10

    sed入门详解教程 原

    sed 基本上就是在玩正则模式匹配,所以,玩sed的人,正则表达式一般都比较强。 2、sed工作原理     sed会一次处理一行内容。...如果给了 2 个地址,即地址对(地址范围),则命令匹配的这个地址范围内执行,但是需要注意的是:对于像 "addr1,addr2" 这种形式的地址匹配,如果addr1 匹配,则匹配成功,"开关"打开,在该行上执行命令...2、子命令i 子命令i和a使用上基本上一样,只不过是在指定行上边插入指定行的内容。 例子1: sed ‘i A’ message 说明:将message文件中每一行上边都插入添加一行内容是A。...例子2: sed ‘1,2c A’ message 说明:将message文件中1-2行的内容替换为A,注意这里说的是将1-2行所有的内容只替换为一个A内容,也就是1-2行内容编程了一行,定址如果连续就是这种情况...2、sed工作流程 大概简单描述一下sed的工作流程,读取文件的一行,存入模式空间,然后进行所有子命令的处理,处理完后默认会将模式空间的内容输出打印到标准输出,也就是在屏幕上显示出来,接着清空模式空间的内存

    1.5K30
    领券