Questions tagged «background-process»

“后台”进程是在“幕后”(即在后台)运行且无需用户干预的计算机进程。使用此类过程的典型任务包括日志记录,系统监视,调度和用户通知。对于有关后台进程的任何问题,请使用此标签。

3
是否有类似每个用户的守护程序?
我需要运行某些后台进程,这些后台进程只要与某个用户登录就可以正常运行。 是否存在类似每用户守护程序的东西?我只知道从计算机启动一直生存到关闭(或手动启动/杀死)的全局守护程序。 现在,我制作了一个脚本,用于检查该进程是否已经存在,如果不存在则创建该进程。然后使用nohupmy中的命令运行此脚本.profile。这样,该过程将在启动时启动,并且仅启动一次(即使有多个rxvt术语来回执行)。但是,它在登录后再也不会被杀死(这不是灾难,但是终止该过程也更干净)。

4
Bash,如何让某些后台进程运行但等待其他进程?
我有(又)其他wait, &,&&控制流的问题.. 假设我有一个类似这样的脚本,我想在同一时间做更多的工作: # may take some hours something InputA > IrrelevantA & something InputB > IrrelevantB & # may take an hour ( somethingElse InputA > OutputA & somethingElse InputB > OutputB & )&& combine OutputA OutputB > Result ...morestuff 问题1:在脚本中,是否在两个进程继续执行的同时combine等待两个somethingElse进程完成something? 问题2:如果不是-我怀疑不是-我如何combine只等待两个somethingElse进程,而something上述进程仍在后台继续工作?

2
为什么while循环在被暂停后会停止?
为什么使用bash并暂停while循环,然后在恢复循环后停止循环?下面的简短示例。 $ while true; do echo .; sleep 1; done . . ^Z [1]+ Stopped sleep 1 $ fg sleep 1 $ 我熟悉信号,我猜这可能是bash的自然行为,但我想更好地理解为什么它会以这种特定方式运行。

1
在没有劫持提示的情况下从后台进程中回显进度
考虑简单的脚本hello: #!/bin/bash echo 'hello world!' 现在从bash开始,如果我尝试在后台运行此命令: $ hello & [1] 12345 $ hello world! █ <--- prompt is stuck here until I hit enter! [1]+ Done $ █ <--- prompt back to normal 我宁愿看到: $ hello & [1] 12345 [1]+ hello world! [1]+ Done $ █ <--- prompt normal the …

4
终止每个后台进程
我有一些Stopped后台流程。 kill $(jobs -p)而且kill `jobs -p`没有效果 kill %1,kill %2等成功终止单个进程 如何使用一个命令杀死每个后台进程? 另外,为什么前两个命令对我不起作用? 我正在运行Linux Mint 15,64位

1
为什么后台进程有时会自发停止?
有时,bg当我在bash中使用进程为背景设置一段时间后,当我在同一shell中按Enter键以重新显示提示时(只是在显示了后台进程的某些输出时检查我是否仍在bash中),后台进程似乎自发停止。 如果我bg再次做同样的问题。 解决它的唯一方法似乎是fg。 为什么会这样?

1
为什么nohup后台进程被杀死?
我尝试通过远程会话启动Shell脚本,该会话使用命令在后台启动进程。 nohup python3 run.py > nohup.out & 当远程会话关闭时,该进程将被消息杀死: 捕获信号SIGHUP SIGHUP被捕获但未被守护。正在退出。 我不明白 为什么使用nohup&在后台启动该进程会被杀死?

1
是否可以在Shell脚本中同时运行两个命令?
我知道可以在命令行上&在后台运行命令。但是我想知道是否可以在脚本中做到这一点。 我有一个像这样的脚本: date_stamp=$(date +"%Y-%m-%d" --date='yesterday') shopt -s extglob cd /my/working/directory/ sh ./stay/get_it_ios.sh sh ./stay/get_it_mix.sh cd stay zip ../stay_$date_stamp.zip ./*201* rm ./stay/!(*py|*sh) 我想运行sh ./stay/get_it_ios.sh和sh ./stay/get_it_mix.sh合力得到更为准确的数据。是否可以在Shell脚本的范围内执行此操作?

1
解释为什么观看“工作”无效,但观看“ ps”有效?
jobs我最喜欢的命令是查看我的代码在后台运行。为了动态检查它们,我倾向于键入 watch 'jobs' 不会显示任何内容。然而 watch 'ps' 完美地工作。我几个月来一直在犯同样的错误。 我认为理解为什么第一个不起作用而第二个不能起作用可以帮助我停止做同样的错误。 有人可以帮忙吗?

3
“使”符号“可变”(后台处理)
我想知道是否有办法将&符放入变量中,并仍然使用它来将进程发送到后台。 这有效: BCKGRND=yes if [ "$BCKGRND" = "yes" ]; then sleep 5 & else sleep 5 fi 但是,仅用一条完成这五条线不是很酷吗?像这样: BCKGRND='&' sleep 5 ${BCKGRND} 但这是行不通的。如果未设置BCKGRND,则它可以工作-但是,如果设置了BCKGRND,则将其解释为文字'&'并输出错误。

6
(bash)脚本A,等待脚本B,但不等待其子进程
所以我有scriptA可以做到: ssh server1 -- scriptB & ssh server2 -- scriptB & ssh server3 -- scriptB & wait otherstuffhappens ScriptB可以: rsync -av /important/stuff/. remoteserver:/remote/dir/. rsync -av /not/so/important/stuff/. remoteserver:/remote/dir/. & exit 我期望的结果是scriptA在继续进行之前将等待scriptB的所有实例完成,这是它当前正在执行的操作,但是它也在等待不太重要的东西的后台rsync。这些是我不想等待的较大文件。 我已经阅读了nohup,disown和&之间的区别,并尝试了不同的组合,但是我没有得到想要的结果。 在这一点上,我很沮丧。任何帮助,将不胜感激!

5
如何在后台启动程序
程序Boblight不在后台运行。执行之间没有明显的区别 sudo boblightd 和 sudo boblightd& 如何解决控制台不会阻止其他输入的问题? pi@raspberrypi ~/boblight/boblightd-for-raspberry-master $ sudo boblightd Boblightd 2.0 (optimized version for raspberry) (c) 2013 Speedy1985 and Heven) (InitLog) start of log /root/.boblight/boblightd.log (PrintFlags) starting boblightd (CConfig::LoadConfigFromFile) opening /etc/boblight.conf (CConfig::CheckConfig) checking config lines (CConfig::CheckConfig) config lines valid (CConfig::BuildConfig) building config (CConfig::BuildConfig) built config successfully (main) …



2
bg之后是否可以停止命令的输出?
假设这种情况 wget http://file wget开始下载文件。 我把它放在后台。 ^Z bg 该命令进入后台。 但是,如果控制台仍处于打开状态,它的输出也仍然在控制台上。 是否可以停止命令的输出? Wget只是一个例子。考虑一个写很多输出的命令。 在控制台上,我知道可以执行此操作bg,然后关闭终端然后再打开另一个终端,但是如果我只有一个终端可用而没有伪终端怎么办?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.