Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Re: (OT) cross-platform $HOME

by eyepopslikeamosquito (Canon)
on Feb 23, 2004 at 06:58 UTC ( #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.

Comment on Re: (OT) cross-platform $HOME

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (8)
As of 2015-01-25 15:47 GMT
Find Nodes?
    Voting Booth?

    My top resolution in 2015 is:

    Results (183 votes), past polls