希望实现以下功能:
简单点说:
command1& && command2 , 这种方式如何实现?
同时兼顾
我现在的做法是先启动第一个 daemon, 然后等待五秒钟以后,然后查询 daemon 端口是否激活,激活的话,才启动第二个。我就是想知道,有没有不用 sleep 的办法,自动找到这个时间点。
除了丑陋的 sleep 方式 (目前我就是这样实现的), 还有没有其他办法?
如果是你说的这样: "前台这个程序,要求必须等待那个 daemon 运行完成才可以继续运行"
那么
./daemon ; ./another
就可以了
你们没有明白我的意思. 这样说吧,我现在要这样: ./.daemon& ; /another , 而且后者必须在前者作为后台启动成功之后,再启动。
呵呵,我还是没讲清楚,当然有特征了。 例如,开启了某个端口,这个可以判断。
现在的问题是:我没有启动 daemon 的情况下,如何用批处理同时启动这两个?
我现在的做法就是先启动第一个 daemon, 然后等待五秒钟以后,然后查询端口是否激活,激活的话,才启动第二个。我就是想知道,有没有不用 sleep 的办法,自动找到这个时间点. 因为 5 秒一点都不保险。
[690]user@host:~$ cat /tmp/long_running_task sleep 10; echo "task done!" [691]user@host:~$ !$ & /tmp/long_running_task & [1] 3108 [692]user@host:~$ wait 3108 task done! [1]+ Done /tmp/long_running_task [693]user@host:~$ echo $? 0
可是估计 lululau 的方法更好