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
命令进行多任务处理。请注意,为了避免意外关闭程序,建议在执行这些操作之前保存所有工作。