perl從/etc/passwd找出udi>500的用戶

用perl從/etc/passwd找出udi>500的用戶
 cat pw.pl
#!/usr/bin/perl
$passwd="/etc/passwd";
open(PW,$passwd) || die "can't open $paswd:$!/n";
while (<PW>) {
($name,$passwd,$uid,$gid,$gcos,$dir,$shell)=split(/:/);
printf "$name/n" if($uid>500);
}
close(PW); 
##########################################3

另一種方法利用了正則表達式強大的搜索功能
#!/usr/bin/perl
use strict;
open (FILE,"/etc/passwd");
while(<FILE>) {
 if(/x:(/d+)/) {
printf "$1 /n"  if ($1 > 500) && (/(/w+):x/)   ;
}
}
close(FILE); 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章