Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: (OT) cross-platform $HOME

by eyepopslikeamosquito (Archbishop)
on Feb 23, 2004 at 06:58 UTC ( [id://331046]=note: print w/replies, xml ) Need Help??


in reply to (OT) cross-platform $HOME

I don't think using the $HOME environment variable is a no-brainer on Unix at all -- though it may be fine for simple applications without high security requirements. Remember, $HOME is just an environment variable, and the user may set it to whatever he/she wants. Worse, it may be incorrectly set when running a script in unusual environments -- via su, for example, I've sometimes seen $HOME incorrectly set to root's home directory. Finally, some systems may use $LOGDIR instead of $HOME (admittedly, this is very rare).

Also, '~/.myapp' is shell-specific which is not very portable, failing on many versions of /bin/sh, for instance.

If the whole application is written Perl, I'd look at using the getpwuid/getpwnam functions on Unix. The Perl $< and $> special variables and the getlogin function may also prove handy.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others pondering the Monastery: (4)
As of 2024-04-25 23:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found