运行&(bg)时,Linux csh脚本将暂停(tty输出)

运行&(bg)时,Linux csh脚本将暂停(tty输出),第1张

概述运行&(bg)时,Linux csh脚本暂停(tty输出

我有奇怪的行为,我有运行java过程这样的csh文件:

run_server.csh

#!/usr/bin/tcsh java -Dtest=testparam -cp ${TEST}/lib/device.jar:${TEST}/conf:${TEST}/lib/commons-logging-1.1.1.jar com.device.server

当我像这样运行它:run_server.csh&在linux中的腻子壳我得到这个按摩:

[2] + Suspended (tty output) run_server.csh

虽然当我运行它没有&符号服务器正在运行并输出其日志按摩到标准输出,但问题是当我按ctr + c的过程中被杀死

使用Java,我怎样才能得到一个windows机器上的所有本地用户的列表

从windows密钥库访问中间CA的Java?

我可以让我最小化的Java应用程序对文件进行反应(在windows上)吗?

从Java应用程序打开命令行

如何locking文件以避免使用NIO软件包进行删除

另一个奇怪的是,如果我写包装脚本run_server.csh看起来像这样run_server_wrapper.csh:

#!/usr/bin/tcsh run_server.csh & sleep 5

它确实运行服务器作为bg进程和run_server_wrapper.csh自己得到按摩:

[2] + Suspended (tty output) run_server_wrapper.csh

这里有什么问题 ?

Java程序应该听什么,做一个好的linux服务?

任何使用Java访问windows COM方法的方法?

你知道一个Java库来访问本机的linux API吗?

Runtime.getRuntime()。exec()的奇怪行为

Java 1.6和Desktop.open()的问题

发生什么事是你把这个过程放在后台,但是它仍然在写给终端。 终端驱动程序不会批准这种行为,并在尝试写入TTY时暂停进程。 当然,显而易见的答案是停止这样做。 如果你把run_server.csh放到后台,你也应该重定向输出,如下所示:

run_server.csh > /path/to/serverlog 2>&1 &

如果您希望程序在后台运行,而您仍然希望看到输出,则通常的解决方案是将输出重定向到日志文件,然后使用tail命令监视日志文件。

tail -f /path/to/serverlog

如果你真的想要在后台运行某些东西,并且仍然能够写入TTY,请关闭tostop标志。

stty -tostop

总结

以上是内存溢出为你收集整理的运行&(bg)时,Linux csh脚本将暂停(tty输出)全部内容,希望文章能够帮你解决运行&(bg)时,Linux csh脚本将暂停(tty输出)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1294302.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存