conda环境中的bash别名
我的conda环境中的bash别名,bash,conda,Bash,Conda,我的.bash\u配置文件中有一个别名,可以直接转到我的工作文件夹: alias workings='cd desktop/working_folder/' 因此,每次我在终端中键入工作,它将光盘桌面/working\u文件夹/ 但在conda中的终端中,这不起作用: bash:workings:未找到命令 我相信在conda的情况下,.bash\u档案在其他地方,但我找不到它 如何解决此问题?改用导出函数 如果您创建导出函数而不是别名,则它将可用于从导出该函数的shell继承环境变量的所有b
.bash\u配置文件中有一个别名,可以直接转到我的工作文件夹:
alias workings='cd desktop/working_folder/'
因此,每次我在终端
中键入工作
,它将光盘桌面/working\u文件夹/
但在conda
中的终端
中,这不起作用:
bash:workings:未找到命令
我相信在conda
的情况下,.bash\u档案
在其他地方,但我找不到它
如何解决此问题?改用导出函数
如果您创建导出函数而不是别名,则它将可用于从导出该函数的shell继承环境变量的所有bash实例
workings() { cd ~/desktop/working_folder/; };
export -f workings
或者:选择正确的点文件
通常,在UNIX上,~/.bash_profile
(及其前身~/.profile
)仅为登录shell运行。传统上,每个会话只有一个登录shell,未来的终端窗口运行非登录交互式shell(而不是source~/.bashrc
)
因此,对于传统配置的UNIX系统,您需要将别名放入~/.bashrc
,而不是~/.profile
,以便它们在启动图形会话后打开的常规图形终端中生效
然而,MacOS并不是这样一个传统的系统:所有终端窗口都启动登录shell,这就是为什么在~/.bash_profile
中放置别名通常有效。。。直到您运行的shell不是由终端程序直接启动的
因此,最佳做法是执行以下两项:
- 将别名和非导出变量/shell运行时设置/etc从
~/.bash\u profile
移动到~/.bashrc
- 源代码
~/.bashrc
来自~/.bash_profile
,因此这些定义在常规终端中仍然可用
有关此功能的详细信息,请参见上的