从命令提示符或 PowerShell 更改为用户文件夹?

从命令提示符或 PowerShell 更改为用户文件夹?

~是否有任何内容与 Linux 中找到的字符相对应。例如CD ~\Downloads从任何地方转到用户的下载文件夹?

答案1

Windows cmd 中没有类似的东西~,但你可以使用%USERPROFILE%%HOMEDRIVE%%HOMEPATH%$HOME*nix 中那样。请参阅

但是在 PowerShell 中,您可以~像在 Linux 上一样使用。cd ~将按预期工作,或者您可以cd像在 Linux 上一样在 PowerShell Core 中将其缩短为

波浪符号 (~) 是当前用户主文件夹的简写符号。此示例显示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 的新堆栈上,然后将当前位置更改为主目录,在命令中用波浪符号 ( ~) 表示,在 FileSystem 提供程序驱动器上使用时等同于$HOME$env:USERPROFILE

推送位置

在 PowerShell Core 中cd,单独使用没有位置的行为与在 Linux 上的行为完全相同,cd并且cd ~两者都更改主目录

  • -Path

    指定新工作位置的路径。如果未提供路径,Set-Location则默认为当前用户的主目录。使用通配符时,cmdlet 将选择与通配符模式匹配的第一个路径。

设置位置

答案2

~波浪符号) 是内置的快捷方式,可自动完成到用户的“主”文件夹。通常,主文件夹位于 /home/ 下,但实际上它可以位于系统上的几乎任何位置(包括网络驱动器上)。这是在 中定义的/etc/passwd

那么cd ~/Downloads实际上运行命令cd /home/<username>/Downloads

相关内容