Czy istnieje polecenie wiersza polecenia systemu Windows, którego można użyć, aby uzyskać pełną ścieżkę do bieżącego katalogu roboczego?
Jak mogę zapisać tę ścieżkę w zmiennej używanej w pliku wsadowym?
windows
batch-file
command-line
cmd
użytkownik62958
źródło
źródło
Odpowiedzi:
Użyj
cd
bez argumentów, jeśli używasz powłoki bezpośrednio lub%cd%
jeśli chcesz użyć jej w pliku wsadowym (zachowuje się jak zmienna środowiskowa).źródło
Możesz ustawić zmienną wsadową / środowiskową w następujący sposób:
przykładowy zrzut ekranu z Windows 7 x64 cmd.exe.
Aktualizacja: jeśli zrobisz
SET var = %cd%
zamiastSET var=%cd%
, poniżej, co się stanie. Dzięki jeb.Przechwytywanie bieżącego katalogu z pliku wsadowego
źródło
SET var = %cd%
umieścić wartość w zmiennejvar<space>
nie dovar
. Powinieneś unikać spacji w poleceniu SETCytuj pomoc systemu Windows dla
set
polecenia (set /?
):Zwróć uwagę na
%CD% - expands to the current directory string.
część.źródło
Na Uniksie?
pwd
źródło
Do systemu Windows możemy użyć
cd
i dla Linuksa
pwd
polecenie jest tam.
źródło
To zawsze działało dla mnie:
źródło
W przypadku systemu Windows
cd
sam pokaże bieżący katalog roboczy.W systemach UNIX i podobnych,
pwd
wykona to samo zadanie. Możesz także użyć$PWD
zmiennej powłoki pod niektórymi powłokami. Nie jestem pewien, czy Windows obsługuje pobieranie bieżącego katalogu roboczego przez zmienną powłoki, czy nie.źródło
%cd%
W systemie Windows:
CHDIR Wyświetla nazwę lub zmienia bieżący katalog.
W systemie Linux:
PWD Wyświetla nazwę bieżącego katalogu.
źródło
Na podstawie pytania uzupełniającego (przechowującego dane w zmiennej) w komentarzach do postu chdir założę się, że chce zapisać bieżącą ścieżkę, aby przywrócić ją po zmianie katalogów.
Pierwotny użytkownik powinien spojrzeć na „pushd”, który zmienia katalog i wypycha bieżącego na stos, który można przywrócić za pomocą „popd”. Na każdej nowoczesnej powłoce cmd systemu Windows, która jest odpowiednia podczas tworzenia plików wsadowych.
Jeśli naprawdę potrzebujesz złapać bieżącą ścieżkę, nowoczesne powłoki cmd mają również zmienną% CD%, którą możesz łatwo umieścić w innej zmiennej w celach informacyjnych.
źródło
Utwórz
.bat
plik podSystem32
, nazwijmy gocopypath.bat
poleceniem skopiowania bieżącej ścieżki może być :Objaśnienie:
%cd%
poda aktualną ścieżkęTeraz
copyclip
jest dostępny zewsząd.źródło
Ale oczywiście odpowiedź gmaran23 jest znacznie łatwiejsza.
źródło
tokens=*
naprawia to.W wierszu polecenia systemu Windows
chdir
lubcd
wydrukuje pełną ścieżkę bieżącego katalogu roboczego w konsoli.Jeśli chcemy skopiować ścieżkę wtedy możemy użyć:
cd | clip
.źródło
W systemie Windows wpisz
cd
działającą bieżącą ścieżkę.W systemie Linux
pwd
dla bieżącej ścieżki roboczej.źródło
Jako jeden z możliwych kodów
źródło