通过Linux工具对本主机的文件/etc/passwd进行文本处理,步骤如下:删除以 nologin 结尾的行,将剩余部分另存为文件a,并加上行号; 将文件a中所有的普通用户名输出到屏幕,并存入文件b中,注意:只要用户名,其它信息不要输出及保存。(UID>=1000为普通用户);将文件a中的所有普通用户,设置为登录后自动启动vim(路径为/bin/vim),并保存; 展示文件a中的所有普通用户中的UID。要求:输出用户名:UID的格式(eg. zgl1:1002)。
时间: 2024-03-22 11:41:38 浏览: 50
linux下/etc/passwd文件的选项说明
好的,我将逐步回答您的问题。
1. 删除以 nologin 结尾的行,将剩余部分另存为文件a,并加上行号:
```
sed '/nologin$/d' /etc/passwd | nl > a
```
2. 输出文件a中所有普通用户名,并存入文件b中:
```
awk -F: '$3 >= 1000 && $3 < 65534 {print $1}' a > b
```
3. 将文件a中的所有普通用户设置为登录后自动启动vim,并保存:
```
awk -F: '$3 >= 1000 && $3 < 65534 {print $1}' a | xargs -I{} chsh -s /bin/vim {}
```
4. 展示文件a中所有普通用户的UID:
```
awk -F: '$3 >= 1000 && $3 < 65534 {print $1":"$3}' a
```
希望这些命令和解释对您有所帮助。
阅读全文