[root@zabbix-server day6]# awk -F: 'BEGIN{ print "用户名 UID 家目录" }
{print $1,$3,$6}' /etc/passwd
用户名 UID 家目录
root 0 /root
bin 1 /bin
daemon 2 /sbin
adm 3 /var/adm
lp 4 /var/spool/lpd
sync 5 /sbin
shutdown 6 /sbin
[root@zabbix-server day6]# awk -F: 'BEGIN{ print "用户名 UID 家目录" }
{print $1,$3,$6}' /etc/passwd | column -t
用户名 UID 家目录
root 0 /root
bin 1 /bin
daemon 2 /sbin
adm 3 /var/adm
lp 4 /var/spool/lpd
sync 5 /sbin
shutdown 6 /sbin
halt 7 /sbin
mail 8 /var/spool/mail
operator 11 /root
过滤系统账户对应的密码
[root@zabbix-server day6]# x="hello"
[root@zabbix-server day6]# awk 'BEGIN{print x}'
[root@zabbix-server day6]# awk -v tmp=$x 'BEGIN{print tmp}'
hello
- 从/etc/passwd中将所有能登陆的账户名提取出来
- 从/etc/shadow中提取账户对应的密码
[root@zabbix-server day6]# more userpass.sh
#!/bin/bash
USER=$(awk -F: '/bash$/{print $1}' /etc/passwd)
for i in $USER
do
awk -F: -v iuser=$i '$1==iuser{print $1,$2}' /etc/shadow
done
[root@zabbix-server day6]# ./userpass.sh
root $6$aDaQ0CHx.qEoIPdq$sSaMQLhOattjJCaiqC/drUcJO8n4a1Mb9FiY0zy49Xds40n7QVW35ZBVEG/Xk2TGLcHBKrEXlyFTZt2raTfa4.
k8s $6$9rtJNCsx8kxL6Ac8$72Qhi3kl3mOVnKObpba.TwwmS5YBQVSd1KT4YRHyZI673goh8cgm5Bk/YwRerQ3JfKc0z8qNYc5twq9J88BMh0