Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: hash parameter question

by chas (Priest)
on Dec 12, 2005 at 22:57 UTC ( #516170=note: print w/ replies, xml ) Need Help??


in reply to hash parameter question

I'm not familiar with User::pwent. However, your find_deletion_candidates sub doesn't make much sense to me. The keys of %users are usernames , so what are %user and $user{uname}?
(Update: I guess you got several answers while I was looking at your code...)


Comment on Re: hash parameter question
Select or Download Code
Re^2: hash parameter question
by ikegami (Pope) on Dec 12, 2005 at 23:09 UTC

    That's exactly what's wrong
    my %user=$_;
    should be
    my %user=%$_;
    because $_ contains a *reference* to the nested hash. The fact that a scalar is being assigned to a hash is a sure sign something is wonky.

      Nope. $_ contains a string. A key from %users; which is presumably a username. Your suggestion will therefore not work.

      Had PerlHeathen written:

      foreach(values %users) { my %user=$_; my $pw=getpwnam($user{uname}); my $homedir=$pw->dir; }

      (note the use of values) then $_ would be a reference to a hash and then your solution would make the code work.

      For example:

      foreach(values %users) { my %user=%$_; my $pw=getpwnam($user{uname}); my $homedir=$pw->dir; }

      It is likely that this is what PerlHeathen was trying to write in the first place.

      jarich

        Thank you all. This is what I was looking for; I need both suggestions -- pass by reference & use values(%users) instead.

        thanks again!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://516170]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (11)
As of 2014-07-30 19:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (240 votes), past polls