Scheduling 注销后如何在Unix上保持Perl脚本运行?

Scheduling 注销后如何在Unix上保持Perl脚本运行?,scheduling,nohup,keep-alive,at-job,Scheduling,Nohup,Keep Alive,At Job,我有一个脚本,需要很多时间才能完成 与其等待它完成,我宁愿注销并稍后检索它的输出 我试过了 at-m-t03030205-f/path/to//thescript.pl nohup/path/to//thescript.pl& 我还验证了进程实际上存在于ps和at-l中,这取决于我使用的调度语法 当我退出外壳时,这两个过程都会消失。有没有办法防止脚本在我关闭连接时终止 我们这里有cron,它们已经设置好并且工作正常,但是我想在一次性脚本中使用at或nohup 我的语法有问题吗?有没有其他方法可以

我有一个脚本,需要很多时间才能完成

与其等待它完成,我宁愿注销并稍后检索它的输出

我试过了

at-m-t03030205-f/path/to//thescript.pl

nohup/path/to//thescript.pl&

我还验证了进程实际上存在于ps和at-l中,这取决于我使用的调度语法

当我退出外壳时,这两个过程都会消失。有没有办法防止脚本在我关闭连接时终止

我们这里有cron,它们已经设置好并且工作正常,但是我想在一次性脚本中使用at或nohup

我的语法有问题吗?有没有其他方法可以产生预期的结果? 编辑:
我无法使用screen或disown-它们未安装在我的HP Unix安装程序中,我也无法使用它们安装它们。它创建了一个终端,当您注销时,该终端将继续运行。当您重新登录时,您可以切换回它。

使用。它创建了一个终端,当您注销时,该终端将继续运行。当您重新登录时,您可以切换回它。

nohup的语法看起来不错,但您的帐户可能不允许在注销后运行进程。另外,请尝试将stdout/stderr重定向到日志文件或/dev/null。

nohup的语法看起来正常,但您的帐户可能不允许在注销后运行进程。另外,尝试将stdout/stderr重定向到日志文件或/dev/null。

这只是一个猜测,但我在ssh和nohup的一些版本中看到了一些情况:如果您使用ssh登录,那么您可能需要重定向stdout、stderr和stdin,以避免退出时会话挂起。其中一个可能仍然连接到终端。我会尝试:

nohup /path/to/./thescript.pl > whatever.stdout 2> whatever.stderr < /dev/null &

我当前版本的ssh和nohup不再是这种情况,后者会在检测到任何连接到终端时重定向它们,但您可能正在使用不同的版本。

这只是一个猜测,但是我在ssh和nohup的一些版本中看到了一些东西:如果您使用ssh登录,那么您可能需要重定向stdout、stderr和stdin,以避免退出时会话挂起。其中一个可能仍然连接到终端。我会尝试:

nohup /path/to/./thescript.pl > whatever.stdout 2> whatever.stderr < /dev/null &

我当前版本的ssh和nohup不再是这种情况,后者会在检测到任何连接到终端时重定向它们,但您可能正在使用不同的版本。

在后台运行您的命令

/path/to/./thescript.pl &
获得你的一些背景工作

   jobs
现在,您可以使用其jobid选择性地拒绝上述任何作业

disown <jobid>

即使在您注销后,所有已解除所有权的进程仍应继续运行。

在后台运行您的命令

/path/to/./thescript.pl &
获得你的一些背景工作

   jobs
现在,您可以使用其jobid选择性地拒绝上述任何作业

disown <jobid>
即使在您注销后,所有被拒绝的进程也应继续运行

否认-h

是一个内置的有用bash。与nohup不同,您可以在已经运行的进程上运行disown

首先,使用control-Z停止作业,从ps获取pid或使用echo$!,使用bg将其发送到后台,然后使用带-h标志的disown

别忘了给你的工作添加背景,否则当你注销时,它将被杀死

否认-h

是一个内置的有用bash。与nohup不同,您可以在已经运行的进程上运行disown

首先,使用control-Z停止作业,从ps获取pid或使用echo$!,使用bg将其发送到后台,然后使用带-h标志的disown


别忘了给你的工作添加背景,否则当你注销时,它将被删除。

你不能在屏幕上出错。花几分钟时间学习并熟悉它。这将是值得你花时间去做的。GNU屏幕之所以很棒有很多原因,包括这一点。绝对推荐。我不认为我有屏幕-没有人为它和我在任何位置安装它,除非它可以在本地水平上完成。谢谢你的阅读材料,虽然你不会在屏幕上出错。花几分钟时间学习并熟悉它。这将是值得你花时间去做的。GNU屏幕之所以很棒有很多原因,包括这一点。绝对推荐。我不认为我有屏幕-没有人为它和我在任何位置安装它,除非它可以在本地水平上完成。谢谢你的阅读材料,虽然肯定很有帮助,但是有没有其他方法可以否认这个过程?肯定很有帮助,但是有没有其他方法可以否认这个过程?谢谢你提供的信息。。。脚本,本质上,将所有输出定向到一个.csv文件,所以就我所知,重定向到任何其他内容以获取信息并不是那么重要。。。该脚本,本质上,将所有输出定向到一个.csv文件,所以就我所知,重定向到任何其他内容以获得信息标记并不是那么重要。。。该脚本将所有输出定向到.csv文件中
. 我不知道是否需要重定向到标准。我要重写打印语句,让它们打印到屏幕上,然后试试你的建议。很好!它是自主的,正是我喜欢的方式。。。。我只是希望它不会成为自我觉醒的感谢信息标记。。。该脚本将所有输出定向到.csv文件中。我不知道是否需要重定向到标准。我要重写打印语句,让它们打印到屏幕上,然后试试你的建议。很好!它是自主的,正是我喜欢的方式。。。。我只是希望它不会变得自我意识