如何将作业带到前台然后在 bash 中禁用作业控制?
我在终端窗口中运行一个程序。我希望禁用Ctrl+Z快捷键来暂停该进程。 按下Ctrl+后Z,遗憾的是,该命令fg && set +m仅在进程完成后才禁用作业控制。我可以set +m在启动进程之前使用它,但我的问题是关于我已经启动进程并且需要禁用作业控制的情况。 ...
我在终端窗口中运行一个程序。我希望禁用Ctrl+Z快捷键来暂停该进程。 按下Ctrl+后Z,遗憾的是,该命令fg && set +m仅在进程完成后才禁用作业控制。我可以set +m在启动进程之前使用它,但我的问题是关于我已经启动进程并且需要禁用作业控制的情况。 ...
我有一个脚本,它通过 LSF 调度程序在集群上计算模拟。在我的设置中,“main.bash”执行 LSF 作业脚本“simulator.bash”。如果线程/索引因某种原因失败,则作业将通过布雷克厄直到所有线程都成功完成任务。 有了像 slurm 这样的调度程序,我们控制,可用于修改 RUNTIMELIMIT、核心数、节点数等属性。提交/重新排队A完成的工作。 我的问题是,LSF 中是否存在一种机制,我们可以在其中修改完成/完工工作并重新排队?。 main.bash 的内容 #!/usr/bin/env bash collect_job_status() ...
我最近从 cli emacs 切换到 gui emacs (25)。我经常使用缓冲区M-x term来运行 cli 工具。切换后,我发现按下C-znow 会最小化 emacs 窗口(并且嘲笑“背景”功能的字面移植),即使聚焦术语缓冲区也是如此。我发现这个问题和答案提出了一种C-z什么都不做的方法,它确实做到了它所说的,但不是我想要的。我希望在 term buffer 中运行的程序移到后台,就像C-z在普通终端仿真器中被推送一样。我还发现这关于在邪恶模式下发送文字的对话C-r,这并不适用,因为我没有使用邪恶模式。 e:这是我的 .emacs (custom-s...
我必须异步运行一堆命令,一旦其中一个命令完成,我就需要根据其退出代码和输出执行操作。请注意,我无法预测这些任务在我的实际用例中将运行多长时间。 为了解决这个问题,我最终得到了以下算法: For each task to be run: Run the task asynchronously; Append the task to the list of running tasks. End For. While there still are tasks in the list of running tasks: For eac...
设想 两种不同的方法,均在浏览器中打开 URL,当我将它们放入 powershell 中的作业中时,它们会停止工作,但如果我将它们放入类/对象的方法中,它们会停止工作。我验证了作业中的对象正在正确执行,因为它还执行了复制命令,我可以看到结果出现。 代码 这是未放置在对象中的工作代码: # 5. Start job and execute a method of the object Start-Job -Name ListStuffOnTable -ScriptBlock { # attempt 1 opening default brow...
我知道nohup它不会做我想要的事情: 例子: $ nohup sleep 600 2>/dev/null >/dev/null </dev/null& [1] 21844 $ ps -ef | fgrep -e 'sleep > TTY' UID PID PPID C STIME TTY TIME CMD me 21844 19313 0 09:37 pts/9 00:00:00 sleep 600 如您所见,sleep 仍然具有pts/9控制终端。我不希望它有...
如同这个问题但在一个重要方面有所不同:我需要从脚本启动一组作业,并在后台运行它们。然后,为了管理它们或检查它们的进度,我需要将它们带到前台并允许用户输入。 我目前正在做的事情是: 循环启动一组作业,例如 for ip in $(cat ip-list.txt); do run-job.sh $ip &; done 将单个作业带到前台,例如 fg 1 这会将作业带到前台,但是有两个问题:我无法提供用户输入——进程没有响应,好像接收我输入的进程是启动作业的脚本,而不是作业本身;变量 $ip 也未计算,即完全显示为“$ip”而不是“19...
我创造了PowerShell 脚本它将我下载的所有电子书复制到一个预先确定的目录中,我的电子书管理器会定期扫描该目录并将其添加到我的书库中。每次下载后都会立即运行该脚本。 问题是,当同时或大约同一时间下载多本书时,电子书管理器就会锁定并且没有响应。 因此,我想使用 PowerShell 作业对复制进行排队,但我不知道如何创建单个队列(单并发),以便每个后续作业将等待每个旧作业的完成。 也就是说,我希望脚本创建一个作业(我们称之为“Book Job”),该作业定期检查正在运行的 Book Job 队列,以查看在它运行之前所有较旧的 Book Job 是否...
我正在使用 GNU parallel 来并行运行多个作业,如下所示:parallel python3 main.py arg ::: args*。对于单线程作业,我曾经-j 100%确保 1 个作业映射到 1 个核心。 现在,每个作业都有四个线程,我有 32 个核心。我想分配作业,使它们不重叠,即在四个不同的核心上同时运行 8 个作业。我不明白该怎么做。我试过了-j8,我认为这会限制并行作业的数量。但它仍然一次启动所有作业 - 并将它们限制为 8 个核心?-j 25%也没用…… ...
我正在运行 Raspbian Wheezy。从昨天起,在强制关机(拔掉电源线)后,我无法启动我的 RPi。从那时起,它启动如下:http://pastebin.com/QiEbda2y 请注意接下来的几行: [ 2.176606] VFS: Mounted root (ext4 filesystem) readonly on device 179:2. ... [ 2.220626] Starting init: /etc/init exists but couldn't execute it (error -13) 然后它启动 ...
在集群上,我做到了 showq -r -u matthey 我的用户名在哪里matthey。以下是输出 active jobs------------------------ JOBID S PAR EFFIC XFACTOR Q USERNAME ACCNT MHOST PROCS REMAINING STARTTIME 7056827[219] R DDR 99.01 1.5 no matthey hkw-282- ...
我们的 LSF 已设置为LSB_ESUB_METHOD="esub.default"。一些用户发现此设置为LSB_ESUB_METHOD="",这会导致绕过在 esub.default 中启用的限制 可以限制覆盖此变量吗?或者任何其他替代方案 ...
我正在一个远程集群上工作(westgrid > 怪物),我通过文件提交流程.pbs。我的.pbs看起来像这样 #!/bin/bash #PBS -l procs=1 #PBS -l walltime=100:00:00 #PBS -N SimulationName #PBS -m ea #PBS -M [email protected] #PBS -l pmem=3000mb #PBS -t 1-100 echo "Starting run at: `date`" R --vanilla --args ${PBS_ARRAYID} &l...
如果 bash 提示符可以用作迷你任务栏,那就太酷了。 bash 提示符(PS1)可以显示 jobs 命令中列出的作业的名称吗? ...