Laden...

Linux-Shell # Verzeichnis der Datei

Erstellt von T_B__ vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.282 Views
T
T_B__ Themenstarter:in
194 Beiträge seit 2006
vor 16 Jahren
Linux-Shell # Verzeichnis der Datei

Hallo zusammen,

ich möchte eine bat-Datei in einer Shell-Datei für Linux umschreiben.
In meiner Bat-Datei bekomme ich mit %~dp0 das Verzeichnis der bat-Datei heraus.
Mit welchem Shell-Befehl bekomme ich das Gleiche in Linux?

3.971 Beiträge seit 2006
vor 16 Jahren

Nutze doch einfach statt absolute Pfade relative. Das lässt sich unter Linux mit

./

erreichen. Ansonsten schau mal auf Bash - LinuxWiki.org dort steht unter bei Tipps & Tricks


Tipps & Tricks
...
- Den aktuellen Pfad eines Scriptes bekommt man mit:
      DIR=$(cd $(dirname $0) 2>/dev/null && pwd)

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...

871 Beiträge seit 2005
vor 16 Jahren

Hallo,


dirname /tmp/test.txt

ergibt: /tmp

Im Shell Script kannst Du also z.B. das machen:


FPATH=`dirname /tmp/test.txt`

damit hast du dann den Pfad in der Variable FPATH drinnen.

Grüsse,
Egon

T
T_B__ Themenstarter:in
194 Beiträge seit 2006
vor 16 Jahren

Nutze doch einfach statt absolute Pfade relative. Das lässt sich unter Linux mit

./  

erreichen. Ansonsten schau mal auf
>
dort steht unter bei Tipps & Tricks

  
Tipps & Tricks  
...  
- Den aktuellen Pfad eines Scriptes bekommt man mit:  
      DIR=$(cd $(dirname $0) 2>/dev/null && pwd)  
  

Danke für den Link. 👍
Funktioniert prima.

T
T_B__ Themenstarter:in
194 Beiträge seit 2006
vor 16 Jahren

Es gibt doch noch ein Problem:
DIR=$(cd $(dirname $0) 2>/dev/null && pwd) geht nicht immer.

"Access denied" wegen /dev/null
Was kann ich da machen?

3.971 Beiträge seit 2006
vor 16 Jahren

Einfach /dev/null mit chmod Rechte vergeben für dein Benutzer, bzw. den Benutzer der das Ausführt.

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...

F
21 Beiträge seit 2008
vor 16 Jahren

scriptpath=`dirname $0`

Gruß, Frank