
Ich versuche, ein Build-Profil im Sublime-Texteditor anzupassen.
Ich möchte den Python-Interpreter in einer virtuellen Umgebung erreichen. Wenn ja,
{
"shell_cmd": "~/Desktop/generalPyProjects/venv/bin/python -u \"$file\""
}
Es läuft gut, aber ich möchte den Pfad relativ machen (also zumindest halb-relativ), damit ich dasselbe Gebäudeprofil ohne Änderungen verwenden kann, solange ich mich im Stammverzeichnis des Projekts befinde. Ich denke, wenn Sie sich den folgenden Code ansehen, erfahren Sie, was ich erreichen möchte.
{
"shell_cmd": "$PWD/venv/bin/python -u \"$file\""
}
Hier versuche ich, die Systemvariable (zumindest nenne ich sie so, ich bin noch ziemlich neu in der Linux-Welt, daher ist die Formulierung wahrscheinlich falsch) anstelle des Pfads zum Stammordner des Projekts zu verwenden. Damit öffne ich den Projektordner über Sublime Text und kann mithilfe dieses Build-Profils meine Skripte ausführen.
Es stellt sich jedoch heraus, dass $PWD
diese Verwendung nicht funktioniert. Während ich auf der Bash bin, echo $PWD
wird eine schöne Zeichenfolgenform des aktuellen Arbeitsverzeichnisses ausgegeben, ich bin mir jedoch nicht sicher, wie ich dies in einem Skript tun soll.
Also, wie kann ich es machen?
Antwort1
Die Variable $PWD
ist mit dem cd
Befehl verknüpft. Sie verweist auf das aktuelle Verzeichnis, aber möglicherweise über einen nicht normalisierten Pfad.
Sie benötigen lediglich das aktuelle Verzeichnis und der genaue Pfad dorthin ist Ihnen egal.
Das aktuelle Verzeichnis wird einfach aufgerufen .
(ein Punkt), genauso wie das übergeordnete Verzeichnis aufgerufen wird ..
(zwei Punkte).
$PWD
Sie können also das „durch“ ersetzen .
und es sollte funktionieren.