argv[0]

Kasparek Tomas kasparek na fit.vutbr.cz
Středa Duben 2 13:18:50 CEST 2003


On Wed, 2 Apr 2003, Petr Stehlik wrote:

> ja:~$ export PATH=$PATH:/tmp
> ja:~$ echo -e '#!/bin/sh\necho $0' >/tmp/argvtst
> ja:~$ chmod +x /tmp/argvtst
> ja:~$ argvtst
>
> Mi to (Debian sid) vypise
> /tmp/argvtst

kasparek:/tmp$ argvtst
/tmp/argvtst
kasparek:/tmp$ ./argvtst
./argvtst
kasparek:/tmp$ ../tmp/argvtst
../tmp/argvtst

V argv[0] je cesta k binarce, ktera se spustila - v prvnim pripade je /tmp
v ceste proto to shell doplni na celou cestu a pak binarku spusti  proto
/tmp/argvtst, v druhem pripade je zadana cela cesta, proto shell nic nemeni
a spusti to primo. Treti pripad viz druhy.

Na OS/distibuci by to zalezet nemelo (aspon mne nic nenapada - s vyjimkou
nastaveni PATH, nicmene zpusob zpracovani je i tak stejny)

Bye

--

	Tomas Kasparek (sioux), PhD student FIT VUT Brno
 	  tomas.kasparek@[seznam.cz,volny.cz]
	  kasparek na fit.vutbr.cz, linux na fit.vutbr.cz
	  http://www.fit.vutbr.cz/~kasparek



Další informace o konferenci Linux