exec "`dirname "$0"`"/../../waf -"$@"
Ich bin neu in ns3. ich habe einige einfache Programme in c++ geschrieben.
Ich meine ns3-Programm unter Befehl
exec "`dirname "$0"`"/../../waf "$@"
Kann jemand erklären, die Funktion der oben genannten Zeile?
- Welche Fehler sind Sie immer?
- Anders Lindahl können Sie erklären, "
dirname "$0"
"/../../waf "$@" Zeile?
Du musst angemeldet sein, um einen Kommentar abzugeben.
bekommt den Namen des Verzeichnisses, der Datei mit dem Befehl.
hängt
/../../waf
mit dem Ergebnis vondirname "$0"
.So es Sie erhalten
/some/arbitray/path
aus dem vorherigen Befehl, dies würde die Rückkehr/some/arbitray/path/../../waf
ersetzt die shell mit dem Befehl erhalten oben und übergibt die Argumente an das Skript übergeben mit dem ursprünglichen Befehl.
Als ein Beispiel, wenn der Befehl in einer Datei enthalten, in einem Verzeichnis
/d1/d2/d3/d4/d5
und Sie erfüllten Sie, indem Sie sagen:dann der Befehl, der ausgeführt wird, wäre:
cd $(dirname $0)/..
wird das Verzeichnis name der shell-Skript-Datei mit dem Befehl, und fügen Sie/..
zu. Wir haben also den übergeordneten Ordner des Ordners mit dem shell-script.