Thread View: pl.comp.lang.perl
2 messages
2 total messages
Started by piecia aka dracorp
Wed, 15 Jun 2011 10:19
Problem z kilkukrotnym wywołaniem getpwent()
Author: piecia aka dracorp
Date: Wed, 15 Jun 2011 10:19
Date: Wed, 15 Jun 2011 10:19
37 lines
1541 bytes
1541 bytes
Witam
Na początku kod:
#v+
#!/usr/bin/perl
use strict;
use warnings;
my $krok = 0;
my $login = "root";
sub getent {
my ( $par1 ) = @_;
print $krok++.":$par1\n";
while(my @list = getpwent){
if($list[0] eq $par1){
print "@list\n";
}
}
}
for(1..3){
getent($login);
}
#v-
wynik jego działania:
#v+
0:root
root x 0 0 root /root /bin/bash
1:root
2:root
#v-
Dlaczego za 2-gim i następnym razem getpwent nie zwraca żadnych wartości?
ps. we właściwym kodzie zrobiłem to inaczej, przepisałem wszystko co
zwraca getpwent do hasha. Ale to OT.
--
piecia aka dracorp
pisz na: piotr kropka rogoza at wp kropka eu
Re: Problem z kilkukrotnym wywołaniem getpwent()
Author: Stachu 'Dozzie' K.
Date: Wed, 15 Jun 2011 10:30
Date: Wed, 15 Jun 2011 10:30
30 lines
1972 bytes
1972 bytes
On 2011-06-15, piecia aka dracorp <imie.nazwisko@wp.eu> wrote:
> Witam
> Na początku kod:
> #v+
> #!/usr/bin/perl
[...]
> while(my @list = getpwent){
> if($list[0] eq $par1){
> print "@list\n";
> }
> }
[...]
> #v-
[...]
> Dlaczego za 2-gim i następnym razem getpwent nie zwraca żadnych wartości?
Bo dojechał do końca bazy passwd. Odpieprz się od tej funkcji jeśli nie
wiesz jak działa.
> ps. we właściwym kodzie zrobiłem to inaczej, przepisałem wszystko co
> zwraca getpwent do hasha. Ale to OT.
Aaale właściwie dlaczego pieprzysz się z tym w ten sposób zamiast po
ludzku wywołać getpwnam()?
Czytałeś w ogóle `perldoc -f getpwent' i `man getpwent'?
--
Secunia non olet.
Stanislaw Klekot
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads