新建一个文件
sudo gedit /home/fy/test
写好第一行,表明此文件是一个bash脚本
#!/bin/bash
打开复制你的conda初始化,粘贴到test文件
gedit ~/.bashrc
我的长这样,建议anaconda安装的时候,不要更改默认路径,我更改后,出现自启动无法激活conda环境,原因未知
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/fy/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/fy/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/fy/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/fy/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
开始写你的要激活的环境,以及在相应环境下需要运行的py文件,注意py文件路径要采用绝对路径
echo "开始执行sd"
conda activate sd
python ${sd_path}main.py&
echo "开始执行vad"
conda activate vad
python ${vad_path}main.py&
echo "开始执行vadsd"
conda activate vad
python ${vadsd_path}main.py&
echo "开始执行kws"
conda activate kws
python ${kws_path}main.py
exit 0
保存,退出。
将test文件移动到 /etc/init.d/ 目录
sudo mv test /etc/init.d/
授予test执行权限
sudo chmod 755 /etc/init.d/test
设定开机自启
sudo sysv-rc-conf test on
给一个样例,以作参考
#!/bin/bash
# this is a HTWB self-start script
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/fy/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/fy/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/fy/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/fy/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
service_path="/home/fy/HTWB/Service/"
sd_path="${service_path}sd/aisaps_sd_uisrnn/"
vad_path="${service_path}vad/aisaps_vad_gatecnn/"
vadsd_path="${service_path}joint/aisaps_vadsd/"
kws_path="${service_path}kws/aisaps_kws_crnnctc/"
echo "开始执行sd"
conda activate sd
python ${sd_path}main.py&
echo "开始执行vad"
conda activate vad
python ${vad_path}main.py&
echo "开始执行vadsd"
conda activate vad
python ${vadsd_path}main.py&
echo "开始执行kws"
conda activate kws
python ${kws_path}main.py
exit 0