在此处打开Powershell窗口出现“Set-Location : 找不到接受实际参数“xxx”的位置形式参数。”
0x00 缘起
使用带有空格的用户文件夹名称(如:My PC)在使用Windows 11操作系统时,在某一文件目录下通过使用组合键:“Shift” + “鼠标右键”呼出右键菜单并选择“在此处打开Powershell窗口”启动Powershell时,出现错误:“Set-Location : 找不到接受实际参数“xxx”的位置形式参数。”,如下图所示。
面对上述问题,可通过基于注册表的方法进行解决。
0x01 方法
1. 打开注册表编辑器
使用任意方式启动注册表编辑器并进入下述地址:
计算机\HKEY_CLASSES_ROOT\Directory\Background\shell\Powershell\command
2. 修改注册项数据
查看注册表编辑器右侧名称为“默认”的数据是否是以下内容:
powershell.exe -noexit -command Set-Location -literalPath "%V"
修改其数据为以下内容:
powershell.exe -noexit -command Set-Location -literalPath '%V'
3. 验证效果
进入桌面使用组合键:“Shift” + “鼠标右键”呼出右键菜单并选择“在此处打开Powershell窗口”启动Powershell,验证配置效果。
此时,并为出现"Set-Location"错误提示,当前配置有效。
0x02 结论
对于Windows 11操作系统在某一文件目录下通过使用组合键:“Shift” + “鼠标右键”启动Powershell出现“Set-Location”问题,应用了在特定注册表目录下将"%V"
替换为'%V'
的方法,最终通过实验验证该方法有效,成功解决报错问题。
0x03 参考
0x04 后记
- No Pains, No Gains.