标签: background-process

如何在后台执行任务?

是否可以在后台运行从终端启动的任务或脚本?

command-line background-process

4
推荐指数
2
解决办法
4万
查看次数

在 Ubuntu 上进行一些处理后,BASH 脚本挂起

我一直在 Red Hat 服务器上运行下面的脚本,它工作正常并完成了工作。我提供给它的文件包含 50 万行(大约 500000 行),这就是为什么(为了更快地完成它)我在 while 循环块的末尾添加了一个“&”

但是现在我已经设置了一个带有 8 GB RAM 的桌面,在它上面运行 Ubuntu 18.04,并且运行相同的代码只完成了几千行然后挂起。我阅读了一些关于它的内容并将堆栈限制增加到无限制,但它仍然在 80000 行左右后挂起,关于如何优化代码或调整我的 PC 参数以始终完成工作的任何建议?

while read -r CID60
do    
 { 
       OLT=$(echo "$CID60" | cut -d"|" -f5) 
       ONID=${OLT}:$(echo "$CID60" | cut -d, -f2 | sed 's/ //g ; s/).*|//') 
       echo $ONID,$(echo "$CID60" | cut -d"|" -f3) >> $localpath/CID_$logfile.csv       
  } &     
done < $localpath/$CID7360
Run Code Online (Sandbox Code Playgroud)

输入:

202-00_MSRFKH00OL6:R1.S1.LT7.PON8.ASSN45| Unlocked|12-654-0330|Up|202-00_MSRFKH00OL6|P282018767.C2028 ( network, R1.S1.LT7.PON8.ONT81.SERV1 )|

202-00_MSRFKH00OL6:R1.S1.LT7.PON8.ASSN46| Unlocked|12-654-0330|Down|202-00_MSRFKH00OL6|P282017856.C881 ( local, R1.S1.LT7.PON8.ONT81.C1.P1 )|

202-00_MSRFKH00OL6:R1.S1.LT7.PON8.ASSN52| Unlocked|12-664-1186|Up|202-00_MSRFKH00OL6|P282012623.C2028 ( network, R1.S1.LT7.PON8.ONT75.SERV1 )|
Run Code Online (Sandbox Code Playgroud)

输出:

202-00_MSRFKH00OL6:R1.S1.LT7.PON8.ONT81.SERV1,12-654-0330 …
Run Code Online (Sandbox Code Playgroud)

bash text-processing background-process

4
推荐指数
3
解决办法
1049
查看次数

什么是后台进程?

我一直听说过后台(但不是桌面后台)进程。但我不明白它们到底是什么。例如,请查看此链接的答案守护进程、服务和进程之间的技术区别是什么?我在这里引用:

守护进程 - 守护进程……它们是在后台运行且不具有交互性的进程 。他们没有控制终端...

它们的用途是什么?还有任何相关的命令来显示在后台运行的进程吗?

command-line process background-process

3
推荐指数
2
解决办法
2579
查看次数

启动屏幕会话并运行脚本而不附加到它?

我正在尝试编写一个脚本来:

  1. 开始新的screen会话
  2. 在新的屏幕会话中运行一些程序或脚本
  3. 与屏幕会话分离,而步骤 2 中的程序可能仍在那里运行。如果步骤 2 中的程序立即或稍后完成,屏幕会话应保持运行(分离)。

我一直在尝试各种组合用的screen -X programscreen -S somename后面program接着screen -D,相结合-d或者-m我相关的问题和答案,但没有找到工作的选项。

我能得到的最接近的是这个:

screen -S MySessionName -d -m myprogram
Run Code Online (Sandbox Code Playgroud)

这会在后台启动一个新的屏幕会话,运行myprogram. 除了一旦myprogram完成(有时是立即)屏幕会话终止,而我想保持它运行。

session bash scripts gnu-screen background-process

3
推荐指数
1
解决办法
1万
查看次数

如何断开与 OpenConnect 的连接?

我的命令是这样的:sudo openconnect -b serverName用于连接VPN,但是当我想断开它时,该进程不会终止并且它在后台活动

我使用这些命令来断开连接,但它们在ubuntu 20.10中对我不起作用:

1-sudo killall openconnect

2-使用 ctrl+c

vpn networking background-process openconnect

3
推荐指数
1
解决办法
9918
查看次数

在后台运行 MySQL 命令 - nohup

我需要在后台模式下运行一些 mysql-query ......但是我怎么能做到这一点nohup呢?

通常我会这样做:

mysql -uroot -p
use SomeDb;
Select * from blablalba;
Run Code Online (Sandbox Code Playgroud)

但是我如何通过在 db 进程中启动来做到这一点?我使用 nohup 进行 mysql 导入,但如何使用查询?

mysql nohup background-process

2
推荐指数
1
解决办法
2万
查看次数

无法在后台重定向 stdout 和 stderr

我想在后台启动一个任务并将所有输出重定向到一个文件。为此,我这样做,./main.py > /tmp/logsFile 2>&1 &但我不工作,我认为问题来自后台任务,当我这样做但不在后台时,它有效!当它在后台时的问题是文件已创建但为空,并且我的机器人总是在连接处返回内容,因此文件不应该为空!我有一个 MSI CX62 6QD 249XFR,i3 上运行 Ubuntu 18.04 LTS

编辑:上面的命令适用于带有 echo 的基本 .sh,但不适用于 main.py

output task-management logs background-process

0
推荐指数
1
解决办法
2091
查看次数