`

使用nohup让程序在远程主机后台运行

阅读更多

因为我购买的一个国外主机居然开放了Telnet权限,因此我也使用Telnet登录上去玩玩Linux,但发现一关闭窗口就自动和主机断开了,和Windows的终端不一样,所以就上网找啊找,找到了一个从后台一直运行某个程序的方法。

  Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台:

  /usr/local/mysql/bin/mysqld_safe --user=mysql &

  但是加入我们很多程序并不象mysqld一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用 & 结尾,但是如果终端关闭,那么程序也会被关闭。但是为了能够后台运行,那么我们就可以使用nohup这个命令,比如我们有个test.php需要在后台运行,并且希望在后台能够定期运行,那么就使用nohup:

  nohup /root/test.php &

  提示:

  [~]$ appending output to nohup.out

  嗯,证明运行成功,同时把程序运行的输出信息放到当前目录的 nohup.out 文件中去。

  附:nohup命令参考

  nohup 命令

  用途:不挂断地运行命令。

  语法:nohup Command [ Arg ... ] [ & ]

  描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。

  无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。

  退出状态:该命令返回下列出口值:

  126 可以查找但不能调用 Command 参数指定的命令。

  127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。

  否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。

  nohup命令及其输出文件

  nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。

  该命令的一般形式为:nohup command &

  使用nohup命令提交作业

  如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:

  nohup command > myout.file 2>&1 &

  在上面的例子中,输出被重定向到myout.file文件中。

  使用 jobs 查看任务。

  使用 fg %n 关闭。

  另外有两个常用的ftp工具ncftpget和ncftpput,可以实现后台的ftp上传和下载,这样我就可以利用这些命令在后台上传和下载文件了。

分享到:
评论

相关推荐

    远程连接至linux或unix主机执行指令

    SSH还支持X11转发,允许在远程主机上启动图形应用程序,其显示会在本地机器上。只需在SSH连接时加上`-Y`或`-X`参数。 5. SFTP/SCP SSH也提供了安全的文件传输协议SFTP和命令行工具SCP,用于在本地与远程主机间安全...

    c#远程调用linux服务器的Python脚本(csdn)————程序.pdf

    标题中的"C#远程调用Linux服务器的Python脚本"指的是使用C#编程语言从Windows客户端远程执行在Linux服务器上托管的Python脚本。这通常涉及到跨平台通信和远程过程调用(RPC)技术。描述中提到的问题和解决方案集中在...

    25个SSH最实用的命令.docx

    18. **可重新连接的远程GNU screen**:结合`screen`和`nohup`命令,即使SSH会话断开,程序也可以在后台继续运行。 19. **继续SCP大文件**:如果SCP传输中断,可以重新运行相同的命令来恢复传输。 20. **通过SSH...

    常用连接服务器工具使用方法.docx

    `nohup`命令常用于后台运行程序,如`nohup ./tongserver &`,这样即使退出终端,程序仍会继续运行。`tail -f`命令则用于查看和跟踪日志文件的变化,如`tail -f nohup.out`可以实时显示启动日志。`./tongserver stop`...

    Linux_SSH_命令大全完整珍藏版

    - `:nohup command &`: 在后台运行命令,即使SSH断开也不会停止。 最后,`nohup`命令可以确保程序在SSH会话关闭后继续运行,例如`nohup wget http://www.phpv.net/file.tar.gz &`。 了解并熟练使用这些命令,将极...

    weblogic维护手册

    例如,在/home/weblogic目录下,找到start_weblogic.sh脚本,使用nohup命令将其后台运行,命令格式为`nohup ./start_weblogic.sh &`。这样即使关闭终端,WebLogic服务也会继续运行。 4. 服务异常处理: 当WebLogic...

    Unxi命令详解

    5. **进程管理**:`ps` 显示当前进程状态,`kill` 发送信号终止进程,`nohup` 让程序在后台运行不受控制台关闭影响,`top` 实时监控系统进程。 6. **打包与压缩**:`tar` 用于打包文件和目录,结合`gzip`、`bzip2` ...

    ubuntu skills

    - **在后台运行程序,退出登录后并不结束程序**:使用 `nohup <command> &` 在后台运行命令,即使用户退出也不会影响程序运行。 - **在后台运行交互式程序,退出登录后并不结束程序**:使用 `screen` 或 `tmux` 创建...

    常用linux命令小结

    它通常与后台运行的命令(如使用`&`)一起使用,以保持进程在用户断开连接后继续运行。例如,运行一个名为`backgroundjob.sh`的脚本并确保它在后台持续运行,可以使用: ```bash nohup /path/to/backgroundjob.sh & ...

    hive仓库的部署与启动

    后台启动通常推荐,以保持服务持续运行,例如使用`nohup`命令。 以上步骤详细介绍了Hive仓库的部署和启动过程,对于学习和实践Hive操作至关重要。完成这些步骤后,用户将能够在本地环境中运行Hive查询并进行数据...

    linux学习课程

    你可以用ps查看当前运行的进程,kill发送信号来结束进程,nohup或screen命令则用于后台运行程序。另外,top或htop命令提供实时的系统资源监控。 网络和文件传输也是Linux学习的一部分。scp和sftp用于安全地在远程...

    AIX命令参考大全中文版,卷 4 n - r

    4. **nohup**:当命令在后台运行时,如果用户退出终端,nohup命令可以防止该命令被挂起。这使得服务和脚本能在用户离开后继续运行。 5. **nslookup**:查询DNS(域名系统)以获取IP地址或主机名。这对于诊断网络...

    Linux命令大全

    - `nohup command &`:在后台运行命令,即使退出终端也不会停止。 - **tail:** 显示文件末尾的部分内容。 - `tail -f filename`:实时显示文件末尾追加的内容。 - **scp:** 安全复制文件。 - `scp filename ...

    linux命令参考大全

    - `nohup`: 让程序在后台运行,即使用户退出也不会停止。 - `crontab`: 定时任务调度,实现自动化任务执行。 5. **网络和通信** - `ping`: 检测网络连接,测试与其他主机的连通性。 - `ifconfig`: 查看或配置...

    Linux 基本使用指令

    27. **nohup命令**:在后台运行程序,即使退出shell也不会终止。 28. **管道符`|`**:将一个命令的输出作为另一个命令的输入。 29. **重定向符`>`和`>>`**:`>`覆盖文件,`>>`追加到文件。 30. **vi编辑器**:...

    apache-tomcat8

    如果需要在后台运行,可以使用`nohup ./startup.sh &`。 配置Tomcat时,主要关注`conf/server.xml`文件。这里可以设置端口号(如HTTP默认8080,HTTPS默认8443),定义虚拟主机,配置连接器以及管理应用等。`web.xml...

    red hat 常用命令

    - **显示远程主机运行时间**:`ruptime` - 显示远程主机的运行时间。 - **远程登录**:`rlogin` - 用于远程登录到另一台主机。 - **Telnet客户端**:`telnet` - 使用Telnet协议登录远程主机。 - **远程执行命令**...

    分析Linux系统的熟悉与使用操作系统实验报告.pdf

    - 控制进程:`kill`和`pkill`用于发送信号终止进程,`nohup`让命令在后台运行不受终端关闭影响。 - 进程调度:`nice`和`renice`用于调整进程优先级,影响其CPU资源分配。 以上只是Linux系统使用的基础知识,更...

Global site tag (gtag.js) - Google Analytics