nohup(no hang-up)命令允许你在后台运行程序,即使关闭终端或断开连接,程序也会继续运行
打开终端。
使用nohup命令启动第一个任务。例如,如果你想在后台运行名为task1.sh的脚本,可以使用以下命令:
nohup ./task1.sh &
这里的&符号表示将任务放入后台运行。
$!获取上一个后台任务的进程ID(PID)。例如:echo $!
nohup命令启动第二个任务,并将其输入重定向到/dev/null,以避免等待用户输入。例如,如果你想在后台运行名为task2.sh的脚本,可以使用以下命令:nohup ./task2.sh < /dev/null > /dev/null 2>&1 &
这里的< /dev/null表示不等待用户输入,> /dev/null表示将标准输出重定向到/dev/null(丢弃输出),2>&1表示将标准错误重定向到标准输出(也是丢弃输出)。
$!获取第二个后台任务的进程ID(PID)。例如:echo $!
重复步骤4和5,以启动更多后台任务。
若要查看所有后台任务的进程ID,可以使用jobs -p命令。
若要结束某个后台任务,可以使用kill命令,后跟任务的进程ID。例如:
kill 12345
这里的12345是任务的进程ID。
通过以上步骤,你可以使用nohup命令进行多任务处理。请注意,为了避免意外关闭程序,建议在执行这些操作之前保存所有工作。