显示/etc/passwd文件中不以/bin/bash结尾的行
时间: 2023-04-01 15:04:52 浏览: 373
/etc/passwd文件中不以/bin/bash结尾的行可能是系统账户或者服务账户,这些账户通常不需要交互式的shell,因此它们的shell字段可能为空或者指向其他的shell程序。您可以使用grep命令过滤出这些行,例如:grep -v '/bin/bash$' /etc/passwd。
相关问题
从/etc/passwd文件中删除以bash为结尾的行
你可以使用`sed`命令来删除`/etc/passwd`文件中以`/bin/bash`结尾的行。具体命令如下:
```shell
sed -i '/\/bin\/bash$/d' /etc/passwd
```
上述命令中,`-i`选项表示直接修改原文件,`/\/bin\/bash$/d`表示删除以`/bin/bash`结尾的行。其中`/`字符需要用`\`进行转义。执行以上命令后,`/etc/passwd`文件中以`/bin/bash`结尾的行将被删除。
linux 从/etc/passwd文件中删除以bash为结尾的行
你可以使用`grep`命令过滤出符合条件的行,并使用重定向符号`>`将结果输出到一个新的文件中,覆盖原文件。具体命令如下:
```shell
grep -v '/bin/bash$' /etc/passwd > /etc/passwd.new && mv /etc/passwd.new /etc/passwd
```
上述命令中,`grep`命令用于过滤掉以`/bin/bash`结尾的行,`-v`选项表示反向匹配,即排除匹配到的行。`/etc/passwd`是需要过滤的文件名,`>`符号用于将过滤结果输出到一个新文件`/etc/passwd.new`中,`&&`符号用于将两个命令连接起来,表示当第一个命令执行成功时才执行第二个命令。最后,使用`mv`命令将新文件覆盖原文件。执行以上命令后,`/etc/passwd`文件中以`/bin/bash`结尾的行将被删除。
阅读全文