每次打开 powershell 时,如何将默认主目录更改为“C:\Users\khornsby”?
我正在运行 Windows 7。以下是有关我的环境状态的信息。
Windows PowerShell 版权所有 (C) 2009 Microsoft Corporation。保留所有权利。 PS P:\> cd ~ PS P:\>echo $HOME 留言:\ 附言:P:\>HOME="C:\Users\khornsby" 术语“HOME=C:\Users\khornsby”未被识别为 cmdlet 的名称, 函数、脚本文件或可运行程序。检查名称的拼写,或 如果包含路径,请验证路径是否正确,然后重试。 位于行:1 字符:25 + HOME="C:\Users\khornsby" 附言:P:\>Set-Variable HOME "C:\Users\khornsby" 设置变量:无法覆盖变量 HOME,因为它是只读的或 持续的。 位于行:1 字符:13 + 设置变量 附言:P:\>dir env:home* 名称值 ---- ----- 家路 \ 回家路 P: 主页共享 \\fileserv\khornsby$ 附言:P:\>
答案1
默认情况下,变量是只读的,但可以通过-Force
切换到 Remove-Variable 来删除。为了使更改在会话之间持久,您可以创建一个配置文件,它很像.bashrc
(适用于 Linux 上的 bash),但 Powershell 除外。
在您的用户帐户的 Documents 目录(通常为C:\Users\YOUR_USERNAME_HERE\documents
)中,创建一个WindowsPowerShell文件夹(名称完全相同)(如果尚不存在)。在文件夹中,创建一个名为个人资料.ps1(确保它不是 profile.ps1.txt)。
在文件内部,放置您想要在打开 Powershell 时执行的任何内容。
例子:
Write-Host "Hi John, welcome back!"
Remove-Variable -Force HOME
Set-Variable HOME "C:\Users\khornsby"
结果:
答案2
为了解决 @Weeble 对快捷方式的担忧~
:
$HOMEDRIVE = "C:\"
$HOMEPATH = "Users\" + $env:username
# Set and force overwrite of the $HOME variable
Set-Variable HOME "$HOMEDRIVE$HOMEPATH" -Force
# Set the "~" shortcut value for the FileSystem provider
(get-psprovider 'FileSystem').Home = $HOMEDRIVE + $HOMEPATH
看这里~ 和 $HOME 之间的区别
答案3
要在 Windows 内部进行更改,请尝试以下操作:
将 PowerShell 固定到任务栏。
右键单击任务栏上的 PowerShell 图标。
右键单击“Windows PowerShell”并选择“属性”。
在“属性”窗口中,转到“快捷方式”选项卡,然后将“起始于:”字段更改为所需的起始目录。(例如:)。
C:\Users\username\Desktop
单击“确定”。
从任务栏启动 PowerShell。
答案4
您可以使用help about_profiles
查看有关此内容的更多详细信息。不要忘记签署您的脚本。