Gibt es einen Windows-Befehlszeilenbefehl, mit dem ich den vollständigen Pfad zum aktuellen Arbeitsverzeichnis abrufen kann?
Wie kann ich diesen Pfad auch in einer Variablen speichern, die in einer Batchdatei verwendet wird?
windows
batch-file
command-line
cmd
user62958
quelle
quelle
Antworten:
Verwenden Sie
cd
ohne Argumente, wenn Sie die Shell direkt verwenden oder%cd%
wenn Sie sie in einer Batchdatei verwenden möchten (sie verhält sich wie eine Umgebungsvariable).quelle
Sie können eine Stapel- / Umgebungsvariable wie folgt festlegen:
Beispiel-Screenshot von einer Windows 7 x64 cmd.exe.
Update: Wenn Sie ein
SET var = %cd%
statttunSET var=%cd%
, ist unten, was passiert. Danke an jeb.Erfassen des aktuellen Verzeichnisses aus einer Batchdatei
quelle
SET var = %cd%
der Wert in der Variablenvar<space>
nicht invar
. Sie sollten Leerzeichen im Befehl SET vermeidenZitieren Sie die Windows-Hilfe für den
set
Befehl (set /?
):Beachten Sie den
%CD% - expands to the current directory string.
Teil.quelle
Unter Unix?
pwd
quelle
Für Windows können wir verwenden
cd
und für Linux
pwd
Befehl ist da.
quelle
Das hat bei mir immer funktioniert:
quelle
Für Windows
cd
wird Ihnen das aktuelle Arbeitsverzeichnis angezeigt.Führt für UNIX- und Workalike-Systeme
pwd
dieselbe Aufgabe aus. Sie können die$PWD
Shell-Variable auch unter einigen Shells verwenden. Ich bin nicht sicher, ob Windows das Abrufen des aktuellen Arbeitsverzeichnisses über eine Shell-Variable unterstützt oder nicht.quelle
%cd%
Unter Windows:
CHDIR Zeigt den Namen des aktuellen Verzeichnisses an oder ändert es.
Unter Linux:
PWD Zeigt den Namen des aktuellen Verzeichnisses an.
quelle
Basierend auf der Folgefrage (Speichern der Daten in einer Variablen) in den Kommentaren zum chdir-Beitrag wette ich, dass er den aktuellen Pfad speichern möchte, um ihn nach dem Ändern der Verzeichnisse wiederherzustellen.
Der ursprüngliche Benutzer sollte sich "pushd" ansehen, wodurch das Verzeichnis geändert und das aktuelle auf einen Stapel verschoben wird, der mit einem "popd" wiederhergestellt werden kann. Auf jeder modernen Windows-Cmd-Shell ist dies der richtige Weg, um Batch-Dateien zu erstellen.
Wenn Sie wirklich den aktuellen Pfad abrufen müssen, haben moderne cmd-Shells auch eine% CD% -Variable, die Sie einfach als Referenz in eine andere Variable einfügen können.
quelle
Erstellen Sie eine
.bat
Datei unterSystem32
, sagen wir es nennencopypath.bat
den Befehl Strompfad zu kopieren sein könnte :Erläuterung:
%cd%
Gibt den aktuellen Pfad anJetzt
copyclip
ist von überall verfügbar.quelle
Aber natürlich ist die Antwort von gmaran23 die viel einfachere.
quelle
tokens=*
behebt das.In einer Windows-Eingabeaufforderung
chdir
odercd
druckt der vollständige Pfad des aktuellen Arbeitsverzeichnisses in der Konsole.Wenn wir den Pfad kopieren möchten, können wir verwenden :
cd | clip
.quelle
Geben Sie unter Windows
cd
den aktuellen Arbeitspfad ein.Unter Linux
pwd
für den aktuellen Arbeitspfad.quelle
Als einer der möglichen Codes
quelle