2015-04-27 79 views
-4

我無法搞清楚如何這個簡單的AWK命令轉換成Perl轉換AWK對Perl

awk -F: '{if($3 > 999 && $3 < 30000){ print $1}}' /etc/passwd 

的思考?

+1

1.它有什麼作用?不要指望那些能夠幫助你解決Perl問題的人知道'awk'。 2.它做的是你在Perl中執行的問題? – ikegami

+0

http://perldoc.perl.org/a2p.html – Kenster

+0

有了這個問題的標題,那麼'mv/usr/bin/perl/usr/bin/awk'?D:D – hek2mgl

回答

2
#!/usr/bin/perl   

use strict; 
use warnings; 

while (1) { 
    my ($user, $uid) = (getpwent())[0,2] 
     or last; 

    print("$user\n") 
     if $uid >= 1_000 && $uid < 30_000; 
} 

endpwent(); 
2

字面相當於是這樣

perl -aF: -ne'print "$F[0]\n" if $F[2] > 999 and $F[2] < 30_000' /etc/passwd