shell脚本暂停(shell脚本暂停几秒在执行)
如何使用shell脚本停止应用
参考最底下的shell 代码,具体功能都有注释说明的。 使用时将代码存入文件中,比如 a.sh, 然后:
chmod?+x?a.sh#?增加可执行权限
http://192.168.110.72/003/a.sh?app_name#?替换?app_name?为你要中止运行的app名称,比如?firefox,?emacs,?等等
下面是具体代码
#!/bin/bash
#?要停止的应用名字
name=$1
#?先要找到你要停止的应用的?PID?(进程号).?这里用?pidof?命令来找
PID=`pidof?$name`
#?如果没有找到,结束
if?[?-z?"$PID"?];?then
?echo?"Error:?Process?$name?is?not?found"
?exit?1
fi
#?然后用?kill?命令来向进程发送信号来终止应用
#?-9?表示发送?KILL?信号,任何进程收到这个信号后都会无条件终止运行。
kill?-9?$PID
#?完成
echo?"Done"
shell脚本中怎么实现:暂停,按键继续?
使用
read
命令暂停,等待用户输入,不作任何后续判断即可,这样任意键都可以继续。
......
read
-p
"Press
any
key
to
continue."
var
......
windows shell脚本命令中,暂停一段时间用哪个命令?
VBS脚本中可以这样:
WScript.Sleep
3000
时间单位为毫秒(milliseconds),因此,上面这句就是暂停3秒。
DOS批处理脚本中只能用ping命令来延时(这个时间是很不精确的)。例如:
@ping
127.0.0.1
-n
2
-w
1000
nul
另外,Windows
2003
Resource
Kit
提供了sleep的功能,你可以去微软网站下载安装。参见下面的链接吧。
参考资料:
shell脚本执行kill命令后自动停止的问题
背景:每周重启jenkins
所以写了一个脚本,命名为 auto_restart_jenkins.sh
其中里面包含了一个kill命令:ps -ef | grep jenkins | grep -v grep | awk '{print "kill -9 "$2}' | sh
但是每次执行到这一步的时候整个shell脚本就被kill掉了。
原因:因为shell脚本名中包含了jenkins,所以在执行kill命令的时候,也就把shell脚本kill掉了。
最后,改一下shell脚本名就好了,不要包含jenkins
或者在shell脚本中添加参数 export BUILD_ID=dontKillMe