sed

stream editor,流编辑器。Sed 将来自输入的行加载到模式空间中, 使用正则表达式语法选择性地搜索和替换模式空间中的文本,然后将模式空间写入到标准输出。

语法

sed [options] file

-i 将转换结果直接写入源文件中
-e 允许一次执行多个匹配命令
  • s替换命令
  • s/模式/替换文字/ 将每行第1个匹配“模式”的字符串转换成“替换文字”
  • s/模式/替换文字/2 将每行第2个匹配“模式”的字符串转换成“替换文字”
  • s/模式/替换文字/g 将每行所有匹配“模式”的字符串转换成“替换文字”
  • s/模式/替换文字/2g 将每行从第2个开始匹配“模式”的字符串转换成“替换文字”
  • 3s/模式/替换文字/g 将第3行所有匹配“模式”的字符串转换成“替换文字”
  • 3,6s/模式/替换文字/g 将第3至6行所有匹配“模式”的字符串转换成“替换文字”
  • 分号 ; 可以用作分隔命令执行多个匹配命令
  • 1,3s/模式/替换文字/g; 3,$s/模式/替换文字/g 第1行到第3行所有匹配“模式”的字符串转换成“替换文字”,第3行以后所有匹配“模式”的字符串转换成“替换文字”

示例

  • sed -i “s/spacename/namespace/” .python_history