查找文件 /etc/services 中包含字符串 web 的所有行。并将所有这些行的内容放到文件 /root/list 中,/root/list 不得包含空行
时间: 2023-12-01 13:03:20 浏览: 33
可以使用 grep 命令来查找包含字符串 web 的所有行,并使用 sed 命令将匹配的行写入到 /root/list 文件中,同时过滤掉空行。具体命令如下:
```
grep "web" /etc/services | sed '/^$/d' > /root/list
```
解释一下:
- `grep "web" /etc/services` :在 /etc/services 文件中查找包含字符串 web 的所有行;
- `sed '/^$/d'` :过滤掉空行;
- `> /root/list` :将结果写入到 /root/list 文件中。
执行完毕后,可以使用 cat 命令查看 /root/list 文件中的内容,如下所示:
```
cat /root/list
```
注意,如果 /root/list 文件不存在,则会自动创建一个新文件。
相关问题
用vi编辑器将/etc/services文件中,所有tcp字符串替换为自己的学号。
可以使用以下命令将/etc/services文件中所有tcp字符串替换为自己的学号:
1. 打开/etc/services文件:`sudo vi /etc/services`
2. 进入替换模式:按下Esc键,然后输入`:%s/tcp/你的学号/g`。其中,`%s`表示全局替换,`tcp`表示要被替换的字符串,`你的学号`表示替换成的字符串。
3. 执行替换:按下回车键,所有的tcp字符串都会被替换成你的学号。
4. 保存并退出:按下Esc键,然后输入`:wq`,保存并退出vi编辑器。
使用sed流编辑器,将/etc/passwd文件中包含了root行的字符个数统计出来
可以使用以下命令来实现:
```
sed -n '/root/ s/[^[:alnum:]]//gp' /etc/passwd | wc -c
```
解释:
- `-n` 参数表示只输出匹配到的行,不输出其他行。
- `/root/` 表示匹配包含 "root" 的行。
- `s/[^[:alnum:]]//g` 表示删除所有非字母数字字符,只留下字母数字字符。
- `p` 表示打印匹配到的行。
- `wc -c` 统计字符数。
这个命令会将 `/etc/passwd` 文件中包含 "root" 的行中的所有字母数字字符都删除,只留下空格和冒号等分隔符,然后再统计字符数,即为包含了 "root" 行的字符数。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)