原创文章,欢迎转载。转载请注明:转载自 祥的博客
原文链接:https://blog.csdn.net/humanking7/article/details/96482015
ankisyncd同步服务器重启脚本
相关:
- 搭建Anki同步服务器(针对Anki2.1)https://blog.csdn.net/humanking7/article/details/94999409
- 针对Anki2.0的版本 https://blog.csdn.net/humanking7/article/details/89299138
0. 环境
Ubuntu 16.04
1. 原因
相对于针对Anki2.0
的同步服务器程序AnkiServer
,个人亲测觉得ankisyncd
这个程序既不稳定,也不方便,用过一两天就崩溃了,而且独占终端,没有关闭,重启。如果不是考虑到会在Anki2.0
与Anki2.1
中间来回捣腾(我比较熟的是python3
和PyQt5
,Anki2.1
漂亮一些,最热的插件也只会对这个版本进行维护,不过Anki2.0
插件更多,纠结啊),我真的想重新装会AnkiServer
。
2. 脚本源码
写了两个脚本anki_restart.sh
和closeAnki.sh
:
closeAnki.sh
:查找ankisyncd
进程,如果存在,杀死进程;anki_restart.sh
:重启ankisyncd
。会调用closeAnki.sh
,之后启动ankisyncd
;
2.1. closeAnki.sh
#!/bin/bash
# ===================
# closeAnki.sh
# ===================
# 关闭 ankisyncd 进程
PID=$(ps -ef|grep ankisyncd|grep -v grep|awk '{print $2}')
if [ -z $PID ]; then
echo "ankisyncd 进程不存在!"
exit
else
echo "ankisyncd PID: $PID"
kill -9 ${PID}
echo "ankisyncd 进程已经杀死!"
fi
2.2. anki_restart.sh
#!/bin/bash
# ===================
# anki_restart.sh
# ===================
# 重启 ankisyncd 进程
# Step1.
echo "========================="
echo -e "检测Anki同步程序是否存在\n若存在先关闭!"
echo "========================="
./closeAnki.sh
echo -e "\n"
# Step2.
echo "========================="
echo "启动Anki同步程序"
echo "========================="
cd /root/code/anki_code/anki-sync-server
# 运行 ankisyncd
nohup python3 -m ankisyncd &
echo -e "\n"
# Step3.
PID=$(ps -ef|grep ankisyncd|grep -v grep|awk '{print $2}')
echo "========================="
echo "启动Anki同步程序的PID: $PID"
echo "========================="
OK!
以上,Enjoy~
i