问题标签 [job-control]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1543 浏览

shell - 无法终止已停止的作业 - 子进程中没有作业控制?

我正在使用 ash/dash 并尝试杀死一个子进程——它似乎没有响应:

sh &打开一个子流程并jobs交付[1]+ Stopped (tty Input) sh.

但是试图用kill %1or杀死这个 Jobkill 26672是行不通的。jobs再次交付[1]+ Stopped (tty Input) sh

将作业置于前台后,fg打开 shell 进行输入。既不工作ctrl+c也不ctrl+z工作,但我可以终止进程exitkill -SIGKILL $$分别停止/暂停进程kill -STOP $$(ash 中没有suspend-command)。

另一方面 - 用 ie 做这个sleep 100工作正常,直到我fg停止这个过程ctr+z。然后我无法完成kill这项停止的工作。

那么我错过了什么以及终止停止工作的解决方案是什么?我必须处理set -m以及如何处理?

提前致谢。

0 投票
1 回答
37 浏览

linux - bash:在 bash 脚本中时无法列出后台作业

我想在 bash 脚本中查看后台作业。这可能吗?为了说明,我在这里运行命令 /usr/bin/experiment 但最终没有输出。

0 投票
2 回答
777 浏览

ruby - 如何暂时停止 Resque Queues 处理新作业?

有没有办法告诉所有工作人员停止处理特定队列(或所有队列)的任何新作业?

我们偶尔会遇到需要的系统不可用(断电、硬件故障等)的问题,关闭这些队列中的作业处理直到系统重新联机会很有帮助。

与其让每个作业都确定所有子系统都处于好/坏状态,不如让一些信号通知队列进入休眠状态,然后在子系统再次准备好时让它们恢复活力,这将很有帮助。

一个严厉的方法是外部关闭所有工人。

0 投票
3 回答
16270 浏览

node.js - 如何在 PowerShell 中禁止“终止批处理作业 (Y/N)”确认?

当我在 PowerShell 中按Ctrl+时,我收到:C

终止批处理作业(是/否)?

类似于https://superuser.com/questions/35698/how-to-supress-terminate-batch-job-yn-confirmation,Windows PowerShell 除外。

PowerShell 是否提供比 CMD 更多的对批处理作业的控制?

0 投票
1 回答
549 浏览

windows - PowerShell 不会开始工作

我有以下 PowerShell 5 程序:

当我运行它时,它会立即终止并显示以下输出:

并且timeout.exe不会出现在任务管理器中。

为什么它在终止前不等待 10 秒?当我timeout.exe 10 /NOBREAK在作业之外调用时,它会等待 10 秒,就像Start-Sleep 10在作业中调用一样。

我不是在寻找一种不同的方法来解决相同的问题(睡眠),而是专门寻找为什么这个程序的行为方式如此的答案。

0 投票
1 回答
648 浏览

c - c中的shell:仅在按键盘回车后响应SIGTSTP

我正在尝试用c编写一个shell。它的一部分是一个处理程序,用于捕获 SIGTSTP 信号并将其设置为使程序进入和退出仅前台模式。

以下是相关的代码片段:

现在我的输出看起来像这样:

我希望输出看起来像这样:

谁能指出我做错了什么?任何帮助将不胜感激。谢谢!

0 投票
2 回答
93560 浏览

bash - 运行一个 shell 脚本并立即将其作为背景,但保留检查其输出的能力

我如何运行一个 shell 脚本并立即将其作为背景,但可以通过拖尾 /tmp/output.txt 随时检查其输出

如果我可以稍后再将进程置于前台,那就太好了。

PS 如果您还可以向我展示如何将后台进程“发送”到可能已初始化或未初始化的 gnu 屏幕中,那将是非常酷的。

0 投票
1 回答
516 浏览

bash - 为什么后台 ssh 可以从 Bash 接管 tty?

(我在 Debian 8 上使用 Bash 4.4.12。在bash 邮件列表中也提出了问题。)

请参阅以下步骤以重现该问题。

tty #1 ( pts/2):

步骤 102启动作为守护进程运行的多路复用 SSH 连接。步骤 105尝试使用多路连接来运行sleep命令。但是我不能在当前的shell中输入任何东西。如果我终止该ssh ... sleep &进程,那么 Bash 将能够再次接受我的输入。似乎所有输入都被后台ssh进程消耗。

转到tty #2 ( pts/3):

我解码了信号掩码:

在这里我们可以看到 ssh 进程没有捕捉到SIGTTIN信号。这让我感到困惑,因为后台作业(进程组)SIGTTIN在尝试从 tty 读取时应该接收并停止。

0 投票
1 回答
239 浏览

bash - 为什么 bash 将通过“&”启动的进程置于前台?

当一个进程以“&”启动时,bash 将新进程放置到前台组一小段时间,然后将自己放回前台组。

据我所知,当我们在没有“&”后台操作符的情况下运行任何外部命令时,shell 会为该命令创建一个新的进程组,并通知终端该进程组现在位于前台。当我们使用“&”运行时,前台进程组不得更改。

我在 linux 上使用了一个 C 程序,它只在启动时打印前台进程组和自己的进程组,然后在睡眠后打印它们。

我得到以下结果:

在本例中,11996 是 bash 的 pid。

(./test&)我只在以重负载(从不)运行时才注意到这种行为./test&

bash 的行为是否正确?

重击版本:4.4.12

编辑

按照@Costi 的建议添加了 pid 值:

28566 是 bash 的 pid

0 投票
1 回答
234 浏览

job-scheduling - 如何保存 SLURM 作业配置?

假设我使用以下配置运行 slurm 作业:

我想保存此作业的配置,例如“时间、内存、任务数”,因此在作业完成后我知道作业是在什么配置下执行的。

所以我决定在输出文件中打印这些变量,但是输出中没有时间和内存:

有谁知道更好的方法?或者如何参考时间和记忆?