起因
在vscode编写conda环境下的python脚本文件,点击run code按钮无法正确运行。排查后发现是因为vscode默认使用powershell为终端。
但即使已经将anaconda添加到环境变量,也不能立即在powershell环境中使用conda命令。还需要执行
conda init powershell
命令后,重启powershell才可以使用。
于是我尝试在powershell中执行conda init powershell
命令,但重启窗口后发现仍未产生效果。此时发现在执行命令后输出的语句中有一行no change F:\360data\��Ҫ����\�ҵ��ĵ�\WindowsPowerShell\profile.ps1
。因此怀疑是由于路径中有乱码导致profile.ps1文件未生效。而此路径乱码是由于迁移了c盘的我的图片,我的视频,下载,等用户文件夹后产生的副作用。
此时再次查阅资料发现:
powershell的profile.ps1配置文件在win下有四种不同的存储路径,分别是
- All Users, All Hosts
$PSHOME\Profile.ps1
- All Users, Current Host
$PSHOME\Microsoft.PowerShell_profile.ps1
- Current User, All Hosts
$HOME\Documents\PowerShell\Profile.ps1
- Current user, Current Host
$HOME\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
about Profiles - PowerShell | Microsoft Learn [[Obsidian-Highlights]]
$HOME
以为当前用户的主目录,而在之前迁移c盘文件夹时,该变量应该已经被修改,所以conda init生成的profile.ps1文件自动到了F:\360data\��Ҫ����\�ҵ��ĵ�\WindowsPowerShell\profile.ps1
目录里面。
方法一
将conda init生成的F:\360data\��Ҫ����\�ҵ��ĵ�\WindowsPowerShell\profile.ps1
下的profile.ps1文件复制到All Users, All Hosts $PSHOME\Profile.ps1
路径中,成功生效。
方法二
把vscode的默认终端修改为cmd,具体方法自行百度。
方法三
把迁移的文件夹重新迁移回去。但并未尝试。不知是否有效。