我在后台

时间:2016-02-19 13:22:53

标签: bash shell scripting gdb jobs

我有两个脚本:

脚本1:

.......
./script2
....

脚本2:

......
gdb ..... > /dev/null 2>&1
......

当我执行脚本时,它可以工作,但是当我在backgroud中运行它时,我收到了这条消息:

[1]+  Stopped                 ./script1 -params...

当我观察运行进程时,有script1,script2和gdb,所以gdb刚刚被锁定(它有q,y命令的命令文件)。当我执行fg时,gdb然后完成。一段时间后,它再次打印[1]+ Stopped gdb锁定,fg再次继续....

可能是什么问题?

编辑:

gdb ..... > /dev/null 2>&1 &
wait

它有效

1 个答案:

答案 0 :(得分:0)

  

[1]+ Stopped ./script1 -params...

当您在后台运行的程序(或脚本)尝试从终端读取时会发生这种情况。

您可能希望使用gdb标记运行--batch,因此它不会尝试读取其STDIN。