nohup后台运行,解放双手






nohup后台运行,解放双手

小果  生信果  2023-06-06 19:00:49

生信人R语言学习必备

立刻拥有一个Rstudio账号

开启升级模式吧

(56线程,256G内存,个人存储1T)

小果如期而至,又是想大家的一天呢。


当我们在服务器运行需要跑很久的程序而要到深夜时,当需要同时运行多个程序而不想开多窗口时,为了使这些程序能够后台运行,而不在我们的终端屏幕上运行,nohup是一个不错的选择。

 

在 Linux 系统中,我们可以使用 nohup 命令来将程序放到后台运行,并将输出结果重定向到指定文件。

nohup 命令的语法为:nohup command [args ...] [> file] [&]

 

其中,command 表示需要在后台运行的命令,args 表示命令的参数,file 是需要将输出结果重定向到的文件名。”&” 表示让命令在后台运行。

 

小果如果想要直接后台运行一个R脚本,可以用以下命令:

nohup Rscript test.R


例如,小果想要将一个 shell 脚本放到后台运行,并将输出结果保存到 log.txt 文件,可以使用以下命令:

nohup sh test.sh > log.txt &


运行该命令后,程序将在后台运行,并将输出结果存储到 log.txt 文件中,用户可以随时退出当前会话,而程序仍会继续在后台运行。

 

我们可以使用jobs命令查看当前有多少在后台运行程序。

jobs -l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated。但是如果任务被终止了(kill),shell 从当前的shell环境已知的列表中删除任务的进程标识。

nohup command >out.file 2>&1 &


nohup command>out.file是将命令的输出重定向到out.file文件中,即输出内容不打印到屏幕上,而是输出到out.file文件中。

2>&1 是将标准出错重定向到标准输出,这里的标准输出已经重定向到了out.file文件,即将标准出错也输出到out.file文件中。最后一个&, 是让该命令在后台执行。

 

大家学会了吗?跟着小果一起尝试一下吧。

小果再给大家介绍一个单细胞分析的小工具:单细胞分析(http://www.biocloudservice.com/366/366.php),能够在线输入数据,并快速输出结果,大家一起来使用吧。

欢迎来和小果交流讨论哦。


微信号 | 18502195490

知乎 | 生信果

点击“阅读原文”立刻拥有

↓↓↓