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

38人参与, 0条评论 登录后显示评论回复

你需要登录后才能评论 登录/ 注册