linux常用命令-sed(流编辑器)

**`sed`(流编辑器)常用命令**

`sed` 是一个强大的文本处理工具,常用于在文本流中进行替换、删除、插入等操作。以下是一些常见的 `sed` 命令:

  1. **替换文本**:
  • `s/old/new/g`:将文本中所有匹配 "old" 的地方替换为 "new"。

例如,替换所有 "apple" 为 "orange":

```

sed 's/apple/orange/g' filename

```

  1. **删除行**:
  • `d`:删除模式空间中的当前行。

例如,删除包含 "error" 的行:

```

sed '/error/d' filename

```

  1. **打印**:
  • `p`:打印模式空间中的当前行。

例如,打印包含 "success" 的行:

```

sed -n '/success/p' filename

```

  1. **插入和追加**:
  • `i`:在匹配行前插入文本。

  • `a`:在匹配行后追加文本。

例如,在包含 "start" 的行前插入 "Begin":

```

sed '/start/i Begin' filename

```

  1. **保存到文件**:
  • `-i`:直接修改文件内容,保存更改。

例如,替换 "cat" 为 "dog" 并保存到原文件:

```

sed -i 's/cat/dog/g' filename

```

  1. **选择行范围**:
  • `1,3d`:删除第1到第3行。

  • `/start/,/end/s/old/new/g`:在 "start" 和 "end" 之间的行中替换 "old" 为 "new"。

例如,删除第5到第8行:

```

sed '5,8d' filename

```

  1. **反斜杠转义**:
  • 在命令中使用反斜杠 `\` 来转义特殊字符,以确保它们不被解释为正则表达式。

例如,替换包含 `^` 的行中的 `^` 为 `start`:

```

sed 's/\^/start/g' filename

```

这些是一些常见的 `sed` 命令,`sed` 提供了许多功能,可以根据需要进一步研究和使用。

相关推荐
星恒随风8 分钟前
MySQL 从零入门(四):表的增删改查与基础查询详解
linux·服务器·数据库·笔记·mysql
陈希1233 小时前
Linux 网络诊断工具实战:ping、curl、tcpdump、mtr、dig 用法详解
linux·网络·tcpdump
进击的荆棘3 小时前
Linux系统——线程同步与互斥之线程池和安全
linux·运维·服务器·安全·单例模式·线程
刘大望3 小时前
不用买开发板:用 QEMU 走通嵌入式 Linux 全流程(三)存储与网络实地验证
linux·qemu·嵌入式linux·alpine
那明眸似水4 小时前
云原生项目三:Docker秒级启动NextCloud个人网盘存储办公系统
linux·运维·docker·云原生·容器
默|笙16 小时前
【Linux网络】网络层协议 IP(1)理解报头、网段划分
linux·网络·tcp/ip
修己xj19 小时前
nslookup 使用指南:两种模式与常用查询技巧
linux
唠玖馆21 小时前
文件系统详解
linux·文件系统·ext2
GeW21 小时前
当Linux内核开始“确定性”,制造高端化才有了底层语法
linux
星恒随风1 天前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql