PSReadLine历史记录重启终端后不加载,每次需重跑命令如何解决?
直接在终端执行Set-PSReadLineOption -PredictionSource属于临时配置,仅对当前生效的PowerShell会话有效,重启终端后配置会被重置,你需要将该配置写入PowerShell的用户配置文件(profile)才能实现永久生效。
操作步骤
- 打开PowerShell终端,执行命令查看当前用户的配置文件路径:
$profile - 执行以下命令检测配置文件是否存在,不存在则自动创建对应文件:
if (!(Test-Path $profile)) { New-Item -Path $profile -ItemType File -Force } - 执行命令用记事本打开配置文件,也可以替换为你常用的文本编辑器:
notepad $profile - 在打开的配置文件末尾追加你需要的PSReadLine配置,比如设置预测源为历史记录的完整写法为:
Set-PSReadLineOption -PredictionSource History
如果需要同时开启插件和历史记录预测,可以写为:Set-PSReadLineOption -PredictionSource HistoryAndPlugin - 保存配置文件后执行以下命令让配置立即生效,后续重启终端也会自动加载该配置:
. $profile
常见注意事项
- 系统自带的Windows PowerShell(5.1版本)和PowerShell 7的配置文件相互独立,如果你两个版本都在使用,需要分别打开对应终端完成上述配置
- 若配置不生效,可先执行
Get-ExecutionPolicy查看执行策略,如果返回值为Restricted,需要以管理员身份打开PowerShell执行Set-ExecutionPolicy RemoteSigned,输入Y确认后即可正常加载配置文件
内容的提问来源于stack exchange,提问作者Oggy
相关产品推荐
相关产品推荐

