![处理服务重启过程的Shell脚本](https://linux22.com/image/76497/%E5%A4%84%E7%90%86%E6%9C%8D%E5%8A%A1%E9%87%8D%E5%90%AF%E8%BF%87%E7%A8%8B%E7%9A%84Shell%E8%84%9A%E6%9C%AC.png)
我们在服务器上运行第 3 方 TTY 服务,以支持第 3 方制造的一些瘦客户端。
有时,与瘦客户端的连接可能会被锁定。过程是停止 TTY 服务,等待连接关闭,启动 TTY 服务。另外,在 CentOS 4.x 服务器上,该命令init q
通常我们从 root 手动执行此操作。
service axtty stop
停止服务
netstat -d | grep axel
运行并监视 netstat 命令,直到所有连接都关闭,即。没有包含 的行axel
。
service axtty start
启动服务
有没有办法将所有这些总结在一个自动 shell 脚本(bash)中?
服务器是 CentOS 4.x 或 6.x
答案1
#!/bin/sh
service axtty stop
while netstat -d | grep -q axel ; do
sleep 1
done
service axtty start
注意:使用 GNU sleep
,您可以执行sleep 0.1
1 秒或其他浮点分数。