Как узнать текущий каталог в командной строке Windows. Аналог pwd в PowerShell
Что такое текущий и рабочий каталог в Windows
Текущий каталог или рабочий каталог (на английском current/working directory) это папка, относительно которой определяются имена файлов, путь которых указан относительно или не указан вовсе.
Допустим, текущим каталогом является папка «C:\Users\MiAl». Следовательно, если я создам файл test.txt без указания абсолютного пути, этот файл будет располагаться по пути C:\Users\MiAl\test.txt.
Понятие текущий (рабочий) каталог чаще всего используются при работе в консоли. Например, при выполнении команды мы указали, что её вывод должен быть сохранён в файл log.txt (без указания абсолютного пути). Нам нужно знать текущий каталог чтобы найти файл log.txt.
Конечно, приложения с графическим интерфейсом также могут оперировать понятием текущий/рабочий каталог. Более того, любой запущенный процесс имеет свой рабочий каталог — в момент запуска этот папка, в которой находится исполнимый файл или скрипт. Но нам сейчас не нужно в это углубляться.
При работе в консоли, пользователь может выразиться «я нахожусь в папке C:\Users\MiAl» имея ввиду текущий каталог. Интуитивно понятно, что имеется ввиду, но с технической точки зрения «текущий каталог» это всего лишь значение переменной $PWD (это справедливо и для Linux и для Windows). При смене текущего каталога пользователь никуда на самом деле не перемещается — меняется только значение переменной $PWD.
Как посмотреть текущий (рабочий) каталог в PowerShell
Чтобы вывести текущий каталог используйте командлет
Get-Location
У этого командлета имеется псевдоним, который вы также можете использовать для просмотра рабочего каталога:
pwd
Как уже было сказано, информация о текущем рабочем каталоге хранится в переменной $PWD, поэтому для просмотра рабочего каталога достаточно вывести значение данной переменной:
$PWD
В PowerShell имеется ещё один псевдоним для Get-Location:
gl
Аналог pwd для PowerShell
Если мы сравним вывод pwd в Linux и Get-Location, то увидим, что вывод различается:
pwd
То есть в Linux команда pwd выводит только значение текущего каталога, а в Windows выводится таблица.
Чтобы получить только вывод текущей папки без показа таблицы, используйте следующую команду:
Get-Location | Format-Table -hide
Как поменять текущий рабочий каталог в PowerShell
Чтобы поменять текущий рабочий каталог используйте командлет Set-Location, например:
Set-Location Z: PS Z:\> pwd Path ---- Z:\
Также вы можете использовать команду cd, которая в PowerShell является псевдонимом Set-Location.
Смотрите также: Аналог cd и chdir в PowerShell. Как поменять текущую рабочую папку в PowerShell
Документация по Get-Location на русском языке
Get-Location (Microsoft.PowerShell.Management)
Связанные статьи:
- Аналог cd и chdir в PowerShell. Как поменять текущую рабочую папку в PowerShell (100%)
- Замена chkdsk в PowerShell для исправления ошибок диска (50%)
- Как узнать размер свободного и занятого пространства диска в PowerShell (50%)
- Как в PowerShell найти файлы большого размера (с помощью Get-Childitem) (50%)
- Как в PowerShell и Get-ChildItem найти только папки (50%)
- Как в PowerShell прочитать содержимое файла. Как сохранить содержимое файла в переменную (RANDOM - 8.4%)