![]() |
1
17
请参阅 http://www.pixelbeat.org/scripts/timeout 脚本,其功能已集成到较新的coreutils中:
|
![]() |
2
12
以下脚本显示了如何使用后台任务完成此操作。第一部分在10秒的限制后终止60秒的进程。第二次尝试终止已退出的进程。请记住,如果你将超时设置得很高,进程ID可能会滚动,你会杀死错误的进程,但这更多的是一个理论问题——超时必须是 非常 大,你必须开始一个 许多 过程。
这是我的Cygwin盒子上的输出:
如果你只想等到流程完成,你需要进入一个循环并检查。这有点不准确,因为
它基本上是循环的,每秒检查进程是否仍在运行。如果没有,它将使用一个特殊值退出循环,以避免尝试杀死孩子。否则,它会超时并杀死孩子。
这是a的输出
以及a
|
![]() |
3
5
查看
this link
这个想法就是你会跑
|
![]() |
4
2
以下是coreutils下的所有“超时”选项:
|
![]() |
5
1
您可以将该命令作为后台作业运行(即使用“&”),将bash变量用于“上次命令运行的pid”,休眠必要的时间,然后运行
|
|
Le Thuan · grep可以只显示我想要的结果吗 7 年前 |
![]() |
Babu · 更新Cygwin后vi或vim未启动 7 年前 |
![]() |
Jay8ee · Cygwin命令替换不工作 7 年前 |
![]() |
CapnKirk · 在cygwin上安装sdkman 7 年前 |