当您打开PowerShell时,它将像Windows操作系统一样加载配置文件。登录Windows操作系统后,您将登录到个人资料,每个用户都有各自的个人资料。它称为当前主机的当前配置文件。
要检查您的配置文件,请在PowerShell控制台中键入$ Profile命令。
PS C:\Users\Administrator> $profile C:\Users\Administrator\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.p s1
这用于Powershell控制台,但让我们检查一下Powershell是否对ISE使用相同的配置文件。
PS C:\> $profile C:\Users\Administrator\Documents\WindowsPowerShell\Microsoft.PowerShellISE_profil e.ps1
因此,ISE也具有自己的配置文件,并且都存储在$ Home目录中。如果我们将$配置文件用于VSCode,该怎么办。
PS C:\> $profile C:\Users\Administrator\Documents\PowerShell\Microsoft.VSCode_profile.ps1
这意味着每个编辑器对于当前用户和当前主机都有自己的配置文件。
您可能已经注意到,每当启动PowerShell时,都可以从Module路径访问系统上不同用户创建的命令和模块,因为仅启动PowerShell也会加载存储在$ PSHome位置的模块。除了目前的使用者
PS C:\> $pshome C:\Windows\System32\WindowsPowerShell\v1.0
上面的示例表明,可能还存在一个针对所有用户的配置文件。让我们看看PowerShell ISE版本有多少个配置文件。
PS C:\> $profile | fl * -Force AllUsersAllHosts : C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 AllUsersCurrentHost : C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.Pow erShellISE_profile.ps1 CurrentUserAllHosts : C:\Users\Administrator\Documents\WindowsPowerShell\profi le.ps1 CurrentUserCurrentHost : C:\Users\Administrator\Documents\WindowsPowerShell\Micro soft.PowerShellISE_profile.ps1 Length : 86
上面的命令是从ISE执行的,我们现在将在PowerShell控制台中检查同一命令,
PS C:\Users\Administrator> $PROFILE | fl * -Force AllUsersAllHosts : C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 AllUsersCurrentHost : C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.Pow erShell_profile.ps1 CurrentUserAllHosts : C:\Users\Administrator\Documents\WindowsPowerShell\profi le.ps1 CurrentUserCurrentHost : C:\Users\Administrator\Documents\WindowsPowerShell\Micro soft.PowerShell_profile.ps1 Length : 83
比较上述两个输出时,您会注意到当前的主机(所有用户和当前用户)配置文件取决于您使用的编辑器。如果使用PowerShell控制台,则配置文件名称将包含PowerShell配置文件。如果使用ISE或VSCode,则当前主机配置文件将相应地包含名称。
通过比较,我们知道基本配置文件存储在两个位置。1)$Home(C:\ Users \ <用户名>)和2)$PSHome(C:\ Windows \ System32 \ WindowsPowerShell)。
因此,共有6个配置文件。
当前用户,当前主机– PowerShell控制台
当前用户,所有主机
所有用户,当前主机-PowerShell控制台
所有用户,所有主机
当前用户,当前主机–取决于编辑器
所有用户,当前主机–取决于编辑器。