从 /etc/shadow 获取密码 — awk 与 Perl

get password from /etc/shadow — awk vs Perl

我想知道如何在 Perl 中实现此功能

cat /etc/shadow | awk -F ":" '/root/{print }'

很高兴听取您的意见,哪种方法更适合此类任务:Perl 或 awk。

Perl 有开关 -F 来定义定界符并打开自动拆分到数组 @F。因此:

perl -F: -le 'print $F[1] if /root/' /etc/shadow     # Perl 5.20+

perl -anF: -le 'print $F[1] if /root/' /etc/shadow

会和

一样
awk -F: '/root/ {print }' /etc/shadow

我看不出两者之间有真正的区别。