nohuplinux
nohup /usr/bin/perl /root/Personkeeper.pl > /dev/null &ide
nohup是永久执行
&是指在后台运行spa
就是指,用nohup运行命令可使命令永久的执行下去,和用户终端没有关系,例如咱们断开SSH链接都不会影响他的运行,注意了nohup没有后台运行的意思;&才是后台运行
&是指在后台运行,但当用户推出(挂起)的时候,命令自动也跟着退出
那么,咱们能够巧妙的吧他们结合起来用就是
nohup COMMAND &
这样就能使命令永久的在后台执行
举个例子nohup tail -f nohup.out
而后退出登陆,再链接,用ps -ef 你会还能看到在运行
ps -ef
root 3457 1 0 18:20 ? 00:00:00 tail -f nohup.out
另外,nohup执行后,会产生日子文件,把命令的执行中的消息保存到这个文件中,通常在当前目录下,若是当前目录不可写,那么自动保存到执行这个命令的用户的home目录下,例如root的话就保存在/root/下命令行
nohup命令:若是你正在运行一个进程,并且你以为在退出账户时该进程还不会结束,那么可使用nohup命令。该命令能够在你退出账户/关闭终端以后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。
该命令的通常形式为:nohup command & orm
linux重定向:进程
0 标准输入it
1 标准输出class
2 标准错误信息输出 。用来指定须要重定向的标准输入或者输出。登录
eg:将某个程序的错误信息输出到log文件中: ./program 2 >log。这样标准输出仍是在屏幕上,可是错误信息会输出到log文件中。后台
另外,也能够实现0,1,2之间的重定向。2>&1:将错误信息重定向到标准输出
Linux下还有一个特殊的文件/dev/null,它就像一个无底洞,全部重定向到它的信息都会消失得无影无踪。这一点很是有用,当咱们不须要回显程序的全部信息时,就能够将输出重定向到/dev/null。
eg:
>/dev/null 2>&1 == 1>/dev/null 2>/dev/null,默认状况下就是1,标准输出,因此通常都省略。而&符号。后面接的是必须的文件描述符。不能写成2>1 这样就成了标准错误重定向到文件名为1的文件中,而不是重定向标准错误到标准输出中。因此这里就是:标准输出重定向到了/dev/null,而标准错误又重定向到了标准输出,因此就成了标准输出和标准错误都重定向到了/dev/null。
2>&1 >/dev/null
命令行的重定向什么的, 是在执行命令以前就准备好了的. 解释顺序从左至右依次进行, 2&>1 ,而1是屏幕, 因此标准错误重定向到屏幕, 再而 1>/dev/null , 即标准输出重定向到 /dev/null, 上述2>&1 >/dev/null
&>/dev/null
// 这个就是,无论你是啥玩意儿文件描述符,统统重定向到/dev/nul