-1
我在执行此打印'hello'的bash脚本时出错,直到后台进程继续执行。错误:在命令中找不到ps命令
ps command not found
我已经做了几次之前,但不知道为什么我这次得到错误。
./a.sh &
while ps -p $! > /dev/null; do
echo hello
done
我在执行此打印'hello'的bash脚本时出错,直到后台进程继续执行。错误:在命令中找不到ps命令
ps command not found
我已经做了几次之前,但不知道为什么我这次得到错误。
./a.sh &
while ps -p $! > /dev/null; do
echo hello
done
调试这个问题,我建议如下
nohup ./a.sh &
p1=$!
while ps -p $p1
do
echo hello
sleep 1
done
这并不解决您的明显PATH
问题,但有一个简单的方法你想要比调用ps
反复做什么。
# Start your script in the background, remembering its process ID
./a.sh & A_PID=$!
# Start another background job that echos hello (once per second, to
# avoid a flood of hellos). Remember its process ID as well
(while : ; do echo hello; sleep 1 done) & LOOP_PID=$!
# Now wait for a.sh to finish...
wait $A_PID
# ... and kill the hello job
kill $LOOP_PID
您是否惹了PATH?你还有/ bin/ps吗? – geoffspear
我已经验证了这一点,PATH有这个位置ps – marc
什么是完整的输出,它运行一次,然后停止?或者它立即抛出命令未找到错误? – Farlan