当前位置: 首页 > news >正文

ssh 连接断开,正在执行的shell脚本也被中断了

背景

最近在训练chatGLM,一次训练经常要花掉近2个小时,但是由于网络不稳定,经常ssh莫名的断开,导致训练不得不重新开启,这就很浪费时间了
在这里插入图片描述

解决方案

下面教大家一种在后台执行命令的方案,即使你ssh连接断开,shell脚本也会在后台自己默默的去执行!

后台执行

首先,要在后台执行 shell 命令并将输出打印到文件中,可以使用重定向符号 “>” 将输出重定向到文件。例如,假设我们有一个名为 “command.sh” 的 shell 脚本,我们可以使用以下命令在后台执行并将输出打印到名为 “output.txt” 的文件中:

nohup command.sh > output.txt 2>&1 &  

这个命令的意思是:

  • nohup:用于在后台执行命令。
  • command.sh:要执行的 shell 脚本的名称。
  • > output.txt:将命令的输出重定向到名为 “output.txt” 的文件中。如果文件不存在,则会创建一个新文件;如果文件已存在,则会将新的输出附加到文件末尾。
  • 2>&1:将标准错误(2)与标准输出(1)合并,这样命令的错误输出也会被打印到文件中。
  • &:将命令放入后台执行。

查看日志

要查看 “output.txt” 文件中的内容,可以使用 tail 命令,例如:

tail -n 100 output.txt  

这个命令的意思是:从 “output.txt” 文件的末尾开始显示 100 行内容。tail 命令的选项 -n 表示显示的行数,-f 表示要显示的文件名。

正常在后台执行的程序是不会输出任何信息的,但是用了tail命令,你就能够在前台实时查看输出的日志了

http://www.lryc.cn/news/116106.html

相关文章:

  • UML 用例图,类图,时序图,活动图
  • Java 面试题2023
  • 【CSS3】CSS3 动画 ④ ( 使用动画制作地图热点图 )
  • 命令模式(Command)
  • Dapper 微型orm的光
  • Mysql随心记--第一篇
  • 使用dockerfile安装各种服务组件
  • 如何简单的无人直播
  • 【基于HBase和ElasticSearch构建大数据实时检索项目】
  • ProComponent 用法学习
  • 巨人互动|Google海外户Google Analytics的优缺点是什么?
  • MySQL数据库的操作
  • 人工智能行业岗位一览
  • 《Linux运维实战:Docker基础总结》
  • Clash 意外退出后 chrome / google 谷歌 浏览器无法连接互联网
  • 89 | Python人工智能篇 —— 深度学习算法 Keras 实现 MNIST分类
  • 每天一道leetcode:剑指 Offer 32 - III. 从上到下打印二叉树 III(中等广度优先遍历)
  • day10 快速排序 方法重载 和 方法递推
  • Qt 6. 其他类调用Ui中的控件
  • PHP 的不同版本(src 版、nts 版和 win 版)之间的区别和共同点。
  • 3 vue的if语法
  • python基础3——流程控制
  • kubernetes中最小组件——Pod
  • C++ 友元
  • Vulkan 绘制显示设计
  • Linux性能分析工具介绍(一)--cpu及功耗相关工具介绍
  • 智能财务分析的无冕之王-奥威BI数据可视化工具
  • .NET 应用程序 部署
  • Linux CentOS安装NVIDIA GPU驱动程序和NVIDIA CUDA工具包
  • 剑指Offer13.机器人的运动范围 C++