|
1

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