Linux下JetBrains PyCharm路径配置问题:无法读取.bashrc中的路径
我之前也碰到过一模一样的问题,PyCharm默认不会自动继承终端里的~/.bashrc环境变量,尤其是从图形界面启动的时候。下面给你几个亲测有效的解决办法,顺便帮你排查下可能的操作问题:
方法1:让PyCharm自动读取~/.bashrc配置
PyCharm如果是从桌面图标启动的,会跳过bash的登录配置,所以终端里生效的环境变量它读不到。可以这么解决:
- 从终端启动PyCharm:打开终端(这时候已经加载了
~/.bashrc),直接运行PyCharm的启动脚本(比如pycharm.sh,具体路径看你安装位置,一般在/opt/pycharm/bin/下),这样PyCharm会完全继承终端的环境变量,自然就能找到Kaldi的那些路径了。 - 配置PyCharm终端用登录Shell:打开PyCharm的
Settings > Tools > Terminal,把Shell path改成/bin/bash --login。登录Shell会自动读取~/.bashrc(或者~/.bash_profile,取决于你的系统),这样PyCharm内置终端和调试环境都会加载这些配置。
方法2:手动给PyCharm添加环境变量
如果不想每次从终端启动,也可以直接把需要的环境变量手动加到PyCharm里:
- 给Python解释器全局加变量:
- 打开
Settings > Project: [你的项目名] > Python Interpreter - 点击右上角的齿轮图标,选择
Show All - 选中当前用的解释器,点右边的铅笔按钮进入编辑页面
- 切换到
Environment Variables标签,点击加号,把cmd.sh和path.sh里export的所有变量(比如KALDI_ROOT、PATH的扩展部分等)逐一添加进去。
- 打开
- 给单个运行配置加变量:
- 打开
Run > Edit Configurations - 选中你要调试的Python脚本配置
- 在
Environment variables里点击展开按钮,添加需要的环境变量,或者直接把两个脚本里的关键路径整合进去。
- 打开
排查你可能的操作错误
先提醒你两个容易踩的小坑:
- 你写的
source home/raphael/kaldi/aspire/s5/cmd.sh是相对路径,正确的应该是绝对路径source /home/raphael/kaldi/aspire/s5/cmd.sh(前面要加/)。虽然你说终端运行正常,但可能是你终端刚好在根目录,换个目录source就会失效,改成绝对路径更稳妥。 - 确认你修改的是用户主目录下的
~/.bashrc,而不是根目录的/.bashrc。根目录的.bashrc是系统级的,普通用户没有修改权限,而且一般也不会被普通用户的Shell加载。
内容的提问来源于stack exchange,提问作者RefiPeretz
相关产品推荐
相关产品推荐

