Изменить папку пользователя из командной строки или PowerShell?

Изменить папку пользователя из командной строки или PowerShell?

Есть ли что-нибудь, что соответствует символу, ~найденному в Linux. Например, CD ~\Downloadsдля перехода в папку загрузок пользователя из любого места?

решение1

В Windows cmd нет ничего похожего ~, но можно использовать %USERPROFILE%или %HOMEDRIVE%%HOMEPATH%как $HOMEв *nix. Смотреть

Однако в PowerShell вы можете использовать ~как в Linux. cd ~будет работать как и ожидалось или вы можете сократить его до cdPowerShell Core как в Linux

Символ тильды (~) — это сокращенное обозначение домашней папки текущего пользователя. В этом примере показано Resolve-Pathвозвращение полного значения пути.

Resolve-Path ~

Path
----
C:\Users\User01

Путь решения

PS C:\> Push-Location ~ -StackName Stack2
PS C:\Users\User01> Pop-Location -StackName Stack2
PS C:\>

Первая команда помещает текущее местоположение в новый стек с именем Stack2, а затем изменяет текущее местоположение на домашний каталог, представленный в команде символом тильды ( ~), который при использовании на дисках поставщика файловой системы эквивалентен $HOMEи $env:USERPROFILE.

Push-Расположение

В PowerShell Core cdбез указания местоположения ведет себя точно так же, как в Linux, где cdи cd ~оба изменяются на домашний каталог

  • -Path

    Укажите путь к новому рабочему расположению. Если путь не указан, Set-Locationпо умолчанию используется домашний каталог текущего пользователя. При использовании подстановочных знаков командлет выбирает первый путь, соответствующий шаблону подстановочных знаков.

Установить-Расположение

решение2

(~Тильда) — это встроенный ярлык, который автоматически заполняет папку «Домашняя» пользователя. Обычно домашняя папка находится в /home/, однако она может находиться практически в любом месте системы (включая сетевые диски). Это определено в /etc/passwd.

Так cd ~/Downloadsна самом деле выполняется командаcd /home/<username>/Downloads

Связанный контент