Holen Sie sich einen Teil des Skript-Ausführungsverzeichnisses in Bash

Holen Sie sich einen Teil des Skript-Ausführungsverzeichnisses in Bash

Ich führe ein Bash-Skript aus, das in einem Verzeichnis auf meinem System vergraben ist. Ich muss in der Lage sein, den ersten Abschnitt des Verzeichnispfads abzurufen.

Der von meinem Skript zurückgegebene Pfad $0ist wie folgt. Der Abschnitt „Pfad/zum/Skript“ ist konstant; der Abschnitt „/Variable/Pfad/zum/Ordner“ ist permanent.

/variable/path/to/folder/main-folder/path/to/my-script.sh
------------------------

Ich brauche den unterstrichenen Abschnitt. Ich habe cut -d/ -f-4und ausprobiert cut -d/ -f4-, aber cutes indiziert von vorne im Pfad, und ich muss von hinten indizieren. (Ich weiß nicht, wie viele Ebenen zwischen /und liegen main-folder, aber ich weiß, wie viele zwischen main-folderund liegen my-script.sh. Der Pfad hier ist korrekt: Es gibt zwei Ordner in , main-folderbevor Sie zu gelangen my-script.sh.)

Antwort1

Wie wäre es damit?

echo ${0%/*/*/*/*}

verwandte Informationen