linux .sh文件,简单命令执行重启scrapy 程序(批量kill pid、后台运行程序)

来源:互联网 发布:mac照片里导出视频 编辑:程序博客网 时间:2024/06/05 10:24
#!/bin/sh
echo "begin kill pid for jd spider project......."
# 执行 scrapy 命令得出来的打印结果赋值给变量: 变量名称=$(cmd命令)
scrapyname=$(scrapy list)
echo "the scrapy name is : $scrapyname"
# 查找该name,批量kill pid
ps -ef|grep $scrapyname | grep -v grep | awk '{print "kill -9 " $2}'
ps -ef|grep $scrapyname | grep -v grep | awk '{print "kill -9 " $2}'|sh
echo "------------------end---------------------"
echo "begin restart scrapy projects......."
# 循环启动 scrapy project name 进程,后台运行.
for((i=0;i<5;i++))
do
        echo "$i : $scrapyname"
        nohup scrapy crawl $scrapyname > myscrapy.log 2>&1 &
done
echo "----------restart scrapy end----------"


ps:

1、 文件创建保存后,给该文件赋权限,执行:chmod +x 文件名

2.sh脚本异常:/bin/sh^M:bad interpreter: No such file or director(不同系统引起的编码问题)

然后修改文件格式

#sh>vim filename

利用如下命令查看文件格式

:set ff 或 :set fileformat

可以看到如下信息

fileformat=dos 或 fileformat=unix

利用如下命令修改文件格式

:set ff=unix 或 :set fileformat=unix

保存文件,就可以执行。