timeout是一个命令行实用程序,它运行指定的命令,如果在给定的时间段后仍在运行,则终止该命令 。timeout命令是GNU核心实用程序软件包的一部分,该软件包几乎安装在所有linux发行版中
如 何 使 用
语法格式:
timeout [OPTION] DURATION COMMAND [ARG]...
DURATION可以是正整数或浮点数,后跟可选的后缀:
- s – 秒 (默认)
- m – 分钟
- h – 小时
- d – 天
实例
5秒后终止ping操作:
[root@localhost ~]# timeout 5 ping www.baidu.comPING www.a.shifen.com (61.135.169.125) 56(84) bytes of data.64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=1 ttl=55 time=16.3 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=2 ttl=55 time=16.0 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=3 ttl=55 time=16.7 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=4 ttl=55 time=16.0 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=5 ttl=55 time=17.6 ms
文章插图
5分钟之后终止ping操作:
[root@localhost ~]# timeout 5m ping www.baidu.com
1天之后终止ping操作:[root@localhost ~]# timeout 1d ping www.baidu.com
2.5秒之后终止ping操作:[root@localhost ~]# timeout 2.5s ping www.baidu.comPING www.a.shifen.com (61.135.169.121) 56(84) bytes of data.64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=1 ttl=55 time=14.9 ms64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=2 ttl=55 time=15.6 ms64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=3 ttl=55 time=15.6 ms
文章插图
发送指定的信号
如果未给出任何信号,则当达到时间限制时,timeout将SIGTERM信号发送到受管命令 。可以使用-s(-signal)选项指定要发送的信号 。
发送SIGKILL信号给ping命令,5秒钟后终止:
[root@localhost ~]# sudo timeout -s SIGKILL 5s ping www.baidu.comPING www.a.shifen.com (61.135.169.125) 56(84) bytes of data.64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=1 ttl=55 time=17.2 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=2 ttl=55 time=16.6 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=3 ttl=55 time=16.7 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=4 ttl=55 time=16.2 ms64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=5 ttl=55 time=16.7 msKilled
文章插图
信号可以指定他的名字也可以指定他序号 。下面使用的事SIGKILL的序号,5秒钟后终止操作:
[root@localhost ~]# sudo timeout -s 9 5s ping www.baidu.comPING www.a.shifen.com (61.135.169.121) 56(84) bytes of data.64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=1 ttl=55 time=15.5 ms64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=2 ttl=55 time=16.3 ms64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=3 ttl=55 time=14.9 ms64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=4 ttl=55 time=16.0 ms64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=5 ttl=55 time=22.0 msKilled
文章插图
【timeout Linux中运行有时间限制的命令】想要知道全部可用的信号,请使用 kill -l该命令查看全部的信号 。
[root@localhost ~]# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR111) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+338) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+843) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+1348) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-1253) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-758) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-263) SIGRTMAX-1 64) SIGRTMAX [root@localhost ~]#
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Linux 硬件故障排除指南
- 在 Linux 下使用 fstrim 延长 SSD 驱动器的寿命
- Linux性能调优,从优化思路说起
- 黑客手中利器nmap扫描器,轻而易举发现漏洞
- 分享几款Linux 下C/C++程序内存泄漏检查工具
- 摩羯座|做事有计划性的摩羯座人,不喜欢依赖别人,讨厌感情中的不可控因素
- 家装风水忌讳必知内容
- 初中生优秀作文:平凡 以平凡为话题的作文
- 中考作文《桥》优秀范文 以桥为话题作文
- 茶叶品牌介绍,中国茶叶十大品牌介绍