linux sed -i d
时间: 2023-11-15 21:02:49 浏览: 170
Linux中的sed命令是一种流编辑器,可以用来对文本进行各种操作,包括替换、删除、插入等。其中,-i选项可以直接修改文件内容,而-d选项则是用来删除匹配到的行。
因此,当你使用sed -i d命令时,它会直接修改文件内容,将匹配到的行删除掉。需要注意的是,这个操作是不可逆的,因此在使用时需要谨慎。
举个例子,如果你想删除一个文件中所有的空行,可以使用sed -i '/^$/d' file命令,其中/^$/表示匹配空行,d表示删除匹配到的行。
相关问题
sed -i 如何修改
`sed -i` 是一种Unix/Linux命令行工具`sed`(stream editor)的一个选项,它允许你在原地、即直接修改指定的文本文件,而无需先备份原始文件。这个选项会在处理完成后自动替换输入文件的内容。
基本语法是这样的:
```bash
sed -i 'command(s)' input_file
```
其中,
- `-i` 后面跟着一个表达式,可以是一个正则表达式或是行号范围,如 `4,6s/some_pattern/replacement/` 表示第4到第6行替换某个模式。
- `command(s)` 是你要执行的操作,例如 `s/pattern/replacement/` 表示替换模式,`d` 表示删除一行等。
举个例子,假设你想将 `input.txt` 文件中所有包含 "old_text" 的行替换为 "new_text",你可以这样操作:
```bash
sed -i 's/old_text/new_text/g' input.txt
```
这里 `/g` 标志表示全局替换,即替换所有匹配项,而不是只替换第一个。
请注意,如果没有 `-i`,`sed` 会生成一个临时文件并显示修改内容,不会覆盖原文本文件。因此,在处理重要文件时,一定要小心使用 `-i`。
sed -i -c -e '/^#/d' config_file
这是一个 Linux 命令,作用是删除指定文件中以 # 开头的行。
其中,sed 是流编辑器,-i 表示直接修改文件,而不是输出到终端。-c 和 -e 是 sed 的选项,-c 表示执行完所有脚本后,打印模式空间的内容,-e 表示接下来输入的是 sed 的脚本。
sed 的脚本是由命令构成的,每个命令都以“/”开头和结尾,例如:
```
/^#/d
```
这个命令的意思是,如果某一行以 # 开头,则删除该行。
config_file 是指定的配置文件名。
阅读全文