在 shell 脚本中激活 conda 环境时,往往会遇见如下问题:
这是因为在执行bash script的时候,一般是fork一个子进程,并不会去读conda的设置。因此我们需要重新设置一下 shell 脚本,在前面加上:
if [ -f "/home/ai/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/ai/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/ai/anaconda3/bin:$PATH"
fi
这个时候整体的 shell 脚本如下:
#!/bin/bash
if [ -f "/home/ai/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/ai/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/ai/anaconda3/bin:$PATH"
fi
conda activate py3
nohup python gpu_beimianposun.py 11912 &