我想将结果存储/etc/passwd在一个结构中,所以我可以稍后更新每个值,但我无法弄清楚要使用哪个结构.
#!/usr/bin/perl
use warnings;
use strict;
open PASSWD, "/etc/passwd";
while(<PASSWD>) {
chomp;
my @f = split /:/;
print "username $f[0]\n";
print "password $f[1]\n";
print "uid $f[2]\n";
print "gid $f[3]\n";
print "gecos $f[4]\n";
print "home $f[5]\n";
print "shell $f[6]\n";
print "--------------------------\n";
}
Run Code Online (Sandbox Code Playgroud)
我假设它应该是一个哈希数组,其中用户名是关键,但我无法弄清楚如何做到这一点.
"阵列哈希阵列"是要走的路吗?
Sin*_*nür 12
抽象
Passwd::Unix提供了一个抽象面向对象和功能接口标准的Unix文件,如/etc/passwd,/etc/shadow,/etc/group.此外,该模块还提供了测试新软件的环境,而无需使用系统关键文件/etc