1
koebehshian OP ![po5cFS.png]( https://s1.ax1x.com/2018/01/24/po5cFS.png)
|
2
zwpaper 2018-01-24 11:14:47 +08:00 1
你试试 kill 了它,看是不是会变成 defunc...
|
3
koebehshian OP @zwpaper 你说 kill 哪个进程,sleep 1 的父进程爷进程都在的
|
4
Beebird 2018-01-24 11:28:10 +08:00 1
楼主的意思是 sleep 1 这个进程会长时间运行,无法结束?
单看这一张截图,没有任何异常。 |
5
koebehshian OP @Beebird 是啊,sleep 1 这个进程,按理说 1 秒后就自杀了,为什么还在吗,我在 resetgpio25.sh 脚本中调用的,等它 sleep 完我还要重启应用服务,结果它这卡住了,导致我的服务都没启动
|
6
shn7798 2018-01-24 11:50:08 +08:00
可能是当前目录 IO busy 导致的, 试试(cd /; sleep 1)
|
7
zwpaper 2018-01-24 11:54:09 +08:00
@koebehshian #3 #3 kill sleep 1 这个,14527
|
8
pkookp8 2018-01-24 11:54:21 +08:00 via Android 1
父进程和 sleep 的进程号差那么多,是不是死循环 sleep 了
|
9
koebehshian OP @pkookp8 没有啊,我复制出来前台运行可以的
|
10
koebehshian OP @shn7798 这和目录有什么关系,sleep 没有调用任何当前目录的资源
|
11
Beebird 2018-01-24 13:00:29 +08:00
把 sleep 1 注释掉试试看? @koebehshian
|
12
koebehshian OP @pkookp8 刚发现 sleep1 的进程 id 在变化,看来确实是死循环了,但不知道为什么死循环,代码我复制出来运行可以的,我的死循环是用 test -e 检测 /dev 目录下的设备。
|
13
weyou 2018-01-24 15:08:55 +08:00
! test -e /dev/ttyUSB0 是什么鬼?
!是 test 的参数啊 试试 while test ! -e /dev/ttyUSB0 |
14
Beebird 2018-01-24 16:32:30 +08:00
是类似这样的吗?@koebehshian
#!/bin/bash echo "starting" while [ ! -e /dev/ttyUSB0]; do echo "not exsiting" done sleep 1 echo "finishing" 执行的 shell 是 bash 还是其他 shell? |
15
koebehshian OP @weyou 我试过两种都行
|
16
koebehshian OP @Beebird 不是,我 sleep1 会在循环里面,有两个循环,我先通过 gpio 把设备关了,然后一个死循环,等它没了;然后再开,再一个死循环等它出现。
我原来以为是后面那个死循环,其实是前面那个死循环。 语法问题就简单多了,我手动运行过没语法问题. |