【问题标题】:Where does Windows PowerShell set $profile?Windows PowerShell 在哪里设置 $profile?
【发布时间】:2011-10-01 17:42:36
【问题描述】:

我想移动我的默认“My Documents\WindowsPowerShell”文件夹。但是,当我尝试这个时,PowerShell 当然找不到 $profile。是否有文件或内容可以编辑以将 PowerShell 指向不同的启动文件夹?

【问题讨论】:

  • 为什么不在常规配置文件中点源文件?
  • 因为我想移动整个 WindowsPowerShell 文件夹。但是,如果事实证明这是不可能的,那么您的建议将是完美的妥协。

标签: powershell


【解决方案1】:

我可以建议您在文件$profile.AllUsersAllHosts 中点源包含您的个人资料内容的文件

$profile.AllUsersAllHosts 类似于 C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1

相关问题:Is it possible to change the default value of $profile to a new value?

【讨论】:

  • 嗯,我没有那个名字的文件。应该有一个吗?那里有一个名为“examples”的文件夹,其中有一个 profile.ps1。
  • @charles Anderson 你必须创造。据我所知,最初没有创建任何配置文件。就做New-Item -path $profile.AllUsersAllHosts -type file -force`
【解决方案2】:

您可以使用来自 Sysinternals 的 junction.exe 使 WindowsPowershell 目录成为指向另一个位置(但不是网络驱动器)的符号链接。

如果您想将配置文件脚本存储在C:\POSH,您可以这样做

junction.exe "$HOME\Documents\WindowsPowerShell" 'C:\POSH'

【讨论】:

  • 我使用它没有任何问题。我使用 Powershell 社区扩展 PSCX cmdlet new-symlink 来做同样的事情。
  • 注意,Junctions 和Windows 10 Symbolic Links 是不同的。
【解决方案3】:

据我所知,你不能这样做。用户配置文件位置始终位于“我的文档\WindowsPowerShell”下,您唯一的选择是重新定位您的文档文件夹(文件夹重定向)。

【讨论】:

    【解决方案4】:

    默认情况下$Profile/$Home/$PSModulePath 都在注册表中...通常在

    • HKEY_CURRENT_USER\Volatile Environment 用于用户环境变量
    • HKEY_CURRENT_USER\Environment 用于系统环境变量
    • HKEY_CURRENT_USER\Software\Microsoft\Windows\Explorer\User Shell Folders

    还有其他地方!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-11
      • 2014-07-24
      • 2018-10-04
      • 2019-04-02
      相关资源
      最近更新 更多