Linux中的sed命令功能强大。本文将详细介绍如何使用sed命令进行字符串替换。1、基本替换命令格式一:sed's/原始字符串/新字符串/'文件命令格式2:sed's/原始字符串/新字符串/g'文件这两种命令格式的区别在于是否有一个“G”。没有"g"表示只替换第一个匹配的字符串,"g"表示替换所有匹配的字符串,"g"可以认为是"global"(全局)的缩写,没有"global""Don’t把最后的都替换掉,这样会好记。命令可以用正则表达式来处理,如下图,第一个命令只把第一个“b”替换成“B”,其他的都不替换;而第二条命令将全文中的数字全部替换为“good”2.替换一行内容命令格式1:sed'linenumbercnewstring'file命令格式2:sed'起始行号,结束行号cnewstring'文件中第一个命令表示用一个新的字符串替换指定行的内容,第二个命令表示用一个新的字符串替换指定行的内容。如下图所示,第一个命令用“newtest!”替换第2行的内容,第二个命令用“newtest!”替换第2到6行的内容。3、多条件替换命令格式:sed-ecommand1-ecommand2-ecommand3有时替换条件有多个,这时可以用“-e”参数将这些替换条件串联起来,一次性完成全部替换手术。比如上面两条命令就可以连接起来:“sed-e's/原始字符串/新字符串/''行号c新字符串'文件”。如下图所示,不仅小写的“a”被替换成了大写的“A”,而且第2行的内容也被替换成了“newtest!”。4.将替换结果保存到文件命令格式:sed-icommand以上命令只是将替换结果打印到屏幕上。如果要将结果保存到文件中,需要加上“-i”参数。注意,在输入Linux命令之前,一定要将输入法切换为英文半角符号。从Windows电脑复制命令到LinuxTerminal执行时,也可能会遇到格式不正确导致的命令执行错误。这时候建议手动重新输入字符。如果觉得输入麻烦,可以直接删除命令中的空格和最后一个字符。,重新输入空格和最后一个字符。
