linux进程suspended状态,为什么在一个终端上却显示“ Suspended(tty output)”(挂起(tty输出))?...

用户在tcshshell环境中遇到问题,当在后台启动程序并尝试将输出打印到标准输出时,程序会被挂起。这一行为仅在特定终端出现,在其他终端则正常运行。即使切换到bash或使用su命令也无法解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

显然,我在tcsh

shell中做了一些奇怪/错误的事情,现在每当我在后台启动一个应用程序并打印输出到标准输出时,该应用程序就会被挂起(停止)。奇怪的是,此行为仅在此终端中发生;如果我在另一个终端上执行相同的操作,则该应用程序将继续在后台运行,并将其输出打印到终端。

在“中断”终端中,我必须将挂起的应用程序放回前台(使用fg),以使其继续运行。

例:

thehost:/tmp/test1(277)> ls -l &

[3] 1454

thehost:/tmp/test1(278)>

[3] + Suspended (tty output) ls --color=auto -l

thehost:/tmp/test1(278)> fg

ls --color=auto -l

total 0

thehost:/tmp/test1(279)>

在另一个终端中执行相同的命令可以正常工作:

thehost:/tmp/test1(8)> ls -l &

[1] 2280

thehost:/tmp/test1(9)> total 0

[1] Done ls --color=auto -l

thehost:/tmp/test1(9)>

在受影响的终端上启动bash不能解决此问题:

thehost:/tmp/test1(280)> bash

oliver@thehost:/tmp/test1$ ls -l &

[1] 2263

oliver@thehost:/tmp/test1$

[1]+ Stopped ls --color=auto -l

oliver@thehost:/tmp/test1$ fg

ls --color=auto -l

total 0

oliver@thehost:/tmp/test1$

获取新的登录shell(带有su - oliver)也不能解决此问题。

因此:我在该终端中做了什么才能得到这种行为, 我该怎么做才能恢复正常行为

?这并不是一个重要的问题(我可以关闭终端并打开一个新终端),但我很好奇:-)

发生在Linux RHEL 6.4 64位,KDE 4.11.5,Konsole 2.11.3和tcsh 6.17.00上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值