← Back to team overview

sslug-teknik team mailing list archive

Re: Finde stien til et shellscript

 

Kenneth Ahn Jensen wrote:
Hep

Jeg vil gerne have at mit bash-script opnår en smule selvbevidsthed.

Når jeg kører scriptet skal det gerne kunne finde ud af hvor det ligger henne, fordi der så skal gøres noget relativt til dette katalog.

Hvordan finder jeg ud af det?
$0 giver mig jo bare det "navn" som scriptet er startet med, så det kan være /home/user/bin/script.sh eller ./script.sh (eller endnu værre ../../bin/script.sh ). Det vil selvfølgelig altid være den relative sti til hvor min CWD er, men jeg ville gerne kunne finde den absolutte, uden at skulle konkatenere $CWD med $0 og dermed kunne få /home/user/some/path/../../bin/script.sh).

Nogen forslag?

Et lille forsøg viser mig at 'echo $0' giver den fulde sti til scriptet.
I /home/user/bin har jeg lagt et script, testsh:
echo $0
pwd

Kaldt fra /home/user ses outputtet:

/home/user/bin/testsh
/home/user

--
Med venlig hilsen

Jørgen Heesche
mailto:heesche@xxxxxxxxxxx
Registered Linux User #401007


Follow ups

References