Re: [Haskell-cafe] How to get a file path to the program invoked?

To be precise, $0 always contains the path to the program called. You are
right, this path will change depending on location from which the program
was called. So $0 is OK for my case, while current directory is unrelated.
Try this:
#!/bin/sh
echo "Arg 0: $0"
echo "All Parameters: [$@]"
Again, any way to get the same functionality in GHC?
On Thu, Dec 1, 2011 at 10:32 PM, Giovanni Tirloni
On Thu, Dec 1, 2011 at 5:26 PM, dokondr
wrote: On the contrary, standard shell variable $0 - contains a full path to the program location in the directory structure, no matter from what directory the program was called.
Are you sure?
$ zero.sh ./zero.sh
$ ./zero.sh ./zero.sh
$ /home/gtirloni/zero.sh /home/gtirloni/zero.sh
-- Giovanni

On 01.12.2011 23:47, dokondr wrote:
To be precise, $0 always contains the path to the program called. You are right, this path will change depending on location from which the program was called. So $0 is OK for my case, while current directory is unrelated.
Actually it contains whatever was passed to exec. By convention this is
program name but it could be anything
#include
Try this:
#!/bin/sh echo "Arg 0: $0" echo "All Parameters: [$@]"
Again, any way to get the same functionality in GHC?
getArgs and getProgName should do the trick http://hackage.haskell.org/packages/archive/base/latest/doc/html/System-Envi...
participants (2)
-
Alexey Khudyakov
-
dokondr