linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

时间:2020-09-01 14:36:44 魔新豆网

  Linux中sed命令功能强大,今天我们就来详细介绍如何在Linux中使用sed命令进行替换,具体来说分为以下几种情况:

  1)如何替换第一次搜索到的内容;

  2)如何在全文中替换所有能匹配的内容;

  3)如何替换某一行的内容;

  4)如何替换多行的内容;

  5)如何将sed替换结果保存到原文中;

  6)如何同时使用多个sed替换条件;

  7)如何使用正则表达式。

  1、替换第一次搜索到的内容,命令如下:

  sed 's/要替换的内容/新的内容/' 要处理的文件

  如下图,将第一个小写的b替换成了大写的B。

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

  2、在全文中替换所有能匹配的内容,命令如下:

  sed 's/要替换的内容/新的内容/g' 要处理的文件

  如下图,将所有的小写的b替换成了大写的B。

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

  3、替换某一行的内容,命令如下:

  sed '行号c 新的内容' 要处理的文件

  如下图,将第二行内容替换成了“new test!”

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

  4、替换多行的内容,命令如下:

  sed '起始行号,终止行号c 新的内容' 要处理的文件

  如下图,将第二行到第六行内容替换成了“new test!”

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

  5、上述这些替换命令都只是将替换的结果显示在屏幕上,如果想替换的结果直接保存到原文中,就只需加上-i参数。如下图所示。

  sed -i 's/要替换的内容/新的内容/g' 要处理的文件

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

  6、多个sed命令也可以用-e参数连接起来,一次性完成多个操作。如下图,首先将小写a替换成了大写A,然后又将第二行内容替换成了“new test!”

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

  7、再有,sed命令中替换与被替换的部分都允许使用正则表达式。比如,以下命令将所有数字替换成了“好的”。

  sed 's/[0-9]/好的/g' testFile2.txt 

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

  注意:

  在输入Linux命令前,一定要将输入法切换成英文半角符号状态。从Windows电脑上复制命令到Linux Terminal中执行时,也有可能遇到格式不正确造成的命令执行错误,这时建议手动重新输入字符,如果觉得输入麻烦,可以只删除命令中的空格和最后一个字符后,重新输入空格和最后一个字符。

  以上就是sed锁定某一行数据进行替换的技巧,希望大家喜欢,请继续关注生活。

本文标签: