Sed命令在Linux中非常强大。今天,我们将详细介绍如何在Linux中使用sed命令来替换它。具体来说,它分为以下几种情况:
1)如何替换第一次搜索的内容;
2)如何替换全文中所有匹配的内容;
3)如何替换某一行的内容;
4)如何替换多行内容;
5)如何将sed替换结果保存到原始文本中;
6)如何同时使用多个sed替换条件;
7)如何使用正则表达式。
1、替换第一次搜索到的内容,的命令如下:
sed 's/要替换的内容/新的内容/' 要处理的文件
如下图所示,第一个小写b替换为大写b。
2.在全文中替换所有能匹配的内容,的顺序如下:
sed 's/要替换的内容/新的内容/g' 要处理的文件
如下所示,所有小写的b都被大写的b替换。
3.替换某一行的内容,的顺序如下:
sed '行号c 新的内容' 要处理的文件
如下所示,将第二行替换为“新测试!”
4.替换多行的内容,的顺序如下:
sed '起始行号,终止行号c 新的内容' 要处理的文件
如下所示,将第二行到第六行的内容替换为“新测试!”
5.所有这些替换命令只是在屏幕上显示替换结果,比如果想替换的结果直接保存到原文中,就只需加上-i参数.如下图所示。
sed -i 's/要替换的内容/新的内容/g' 要处理的文件
6.多个sed命令也可以与-e参数连接,一次完成多个操作。如下图,先把小写A换成大写A,然后把第二行换成“新测试!”
7.此外,正则表达式允许用于sed命令的替换部分和被替换部分。例如,以下命令将所有数字替换为“确定”。
sed 's/[0-9]/好的/g' testFile2.txt
注意:
在输入Linux命令之前,必须将输入法切换到英文半角符号状态。将命令从Windows计算机复制到Linux终端执行时,也有可能遇到格式不正确导致的命令执行错误。此时,建议手动重新输入字符。如果输入比较麻烦,只能删除命令中的空格和最后一个字符,然后重新输入空格和最后一个字符。
以上是sed锁定一行数据进行替换的技巧。希望大家喜欢。请继续关注。
相关推荐:
linux如何使用命令返回到更高级别的目录?