Linux后台命令的使用说明

时间:2022-03-04 14:50:44

1)ctrl+Z:停止当前进程

首先先将一个程序运行起来,这个时候如果你需要去干别的事情,需要暂停运行,可以使用ctrl+Z:

user@mine:/opt/user/pytorch-gender$ python train_debug.py --debugFile=./debug
{'debugFile': './debug'}
Epoch /
----------
^Z
[]+ Stopped python train_debug.py --debugFile=./debug

从上面可以看见,这个程序已经已经停止了,状态为Stopped

2)jobs:用于查看正在运行的命令

user@mine:/opt/user/pytorch-gender$ jobs
[]+ Stopped python train_debug.py --debugFile=./debug

前面的编号[1]是命令编号

3)bg 命令编号:把程序调度到后台执行:

user@mine:/opt/user/pytorch-gender$ bg
[]+ python train_debug.py --debugFile=./debug &
user@mine:/opt/user/pytorch-gender$ jobs
[]+ Running python train_debug.py --debugFile=./debug &

然后我们可以看见该命令在后台运行起来了,状态为Running,命令后的&标志就是把命令放在后台运行的意思

这个时候该命令生成的返回信息会自己打印出来:

user@mine:/opt/user/pytorch-gender$ train Loss: 0.4611 Acc: 0.7824
val Loss: 0.1882 Acc: 0.9340
Epoch /
---------- user@mine:/opt/user/pytorch-gender$ train Loss: 0.3271 Acc: 0.8578
val Loss: 0.1845 Acc: 0.9260
Epoch /
----------

不影响你运行其他的命令,你就输入你的命令回车即可

当然,如果你不想让输出显示在控制台中,那就在运行时指明将输出信息写入日志文件:

user@mine:/opt/user/pytorch-gender$ python train_debug.py --debugFile=./debug >> gender_log_debug_1.out 

打开另一个窗口查看日志文件为:

user@mine:/opt/user/pytorch-gender$ cat gender_log_debug_1.out
{'debugFile': './debug'}
Epoch /
----------

然后这个时候如果你想进行调试,即pytorch Debug —交互式调试工具Pdb (ipdb是增强版的pdb)-1-在pytorch中使用,那么你在本地生成文件夹debug后,再查看日志文件变为:

user@mine:/opt/user/pytorch-gender$ cat gender_log_debug_1.out
{'debugFile': './debug'}
Epoch /
----------
train Loss: 0.4507 Acc: 0.7919
val Loss: 0.1578 Acc: 0.9420
Epoch /
----------
train Loss: 0.3201 Acc: 0.8576
val Loss: 0.1069 Acc: 0.9540
Epoch /
----------
--Call--
> /home/mine/anaconda3/lib/python3./site-packages/torch/autograd/grad_mode.py()__exit__() --> def __exit__(self, *args):
torch.set_grad_enabled(self.prev) ipdb> user@mine:/opt/user/pytorch-gender$

这时候你在命令端输入调试命令u:

user@mine:/opt/user/pytorch-gender$ python train_debug.py --debugFile=./debug >> gender_log_debug_1.out
u

可见日志文件中变为:

user@mine:/opt/user/pytorch-gender$ cat gender_log_debug_1.out
{'debugFile': './debug'}
Epoch /
----------
train Loss: 0.4507 Acc: 0.7919
val Loss: 0.1578 Acc: 0.9420
Epoch /
----------
train Loss: 0.3201 Acc: 0.8576
val Loss: 0.1069 Acc: 0.9540
Epoch /
----------
--Call--
> /home/mine/anaconda3/lib/python3./site-packages/torch/autograd/grad_mode.py()__exit__() --> def __exit__(self, *args):
torch.set_grad_enabled(self.prev) ipdb> > /opt/user/pytorch-gender/train_debug.py()train_model()
import ipdb;
--> ipdb.set_trace() ipdb>

如果调用l 123命令:

user@mine:/opt/user/pytorch-gender$ python train_debug.py --debugFile=./debug >> gender_log_debug_1.out
u
l

可见日志文件又变为:

user@mine:/opt/user/pytorch-gender$ cat gender_log_debug_1.out
{'debugFile': './debug'}
Epoch /
----------
train Loss: 0.4507 Acc: 0.7919
val Loss: 0.1578 Acc: 0.9420
Epoch /
----------
train Loss: 0.3201 Acc: 0.8576
val Loss: 0.1069 Acc: 0.9540
Epoch /
----------
--Call--
> /home/mine/anaconda3/lib/python3./site-packages/torch/autograd/grad_mode.py()__exit__() --> def __exit__(self, *args):
torch.set_grad_enabled(self.prev) ipdb> > /opt/user/pytorch-gender/train_debug.py()train_model()
import ipdb;
--> ipdb.set_trace() ipdb> labels = labels.to(device) # 当前批次的标签输入
# print('input : ', inputs)
# print('labels : ', labels) # 将梯度参数归0
optimizer.zero_grad() # 前向计算
# track history if only in train
with torch.set_grad_enabled(phase == 'train'):
# 相应输入对应的输出 ipdb>

所以输出和命令输入虽然不在一起,但是并不妨碍功能的实现

4)fg 命令编号:将后台命令调到前台运行

如果我想要对上面的命令进行调试,我就需要将其调到前台,然后再进行调试

user@mine:/opt/user/pytorch-gender$ fg
python train_debug.py --debugFile=./debug
train Loss: 0.2337 Acc: 0.9059
val Loss: 0.1347 Acc: 0.9400
Epoch /
----------
train Loss: 0.2040 Acc: 0.9141
val Loss: 0.0962 Acc: 0.9640
Epoch /
----------
train Loss: 0.1984 Acc: 0.9182
val Loss: 0.0825 Acc: 0.9720
Epoch /
----------
train Loss: 0.1841 Acc: 0.9218
val Loss: 0.1059 Acc: 0.9640
Epoch /
----------
train Loss: 0.1868 Acc: 0.9215
val Loss: 0.0668 Acc: 0.9740
Epoch /
----------
train Loss: 0.1782 Acc: 0.9273
val Loss: 0.0735 Acc: 0.9740
Epoch /
----------
train Loss: 0.1703 Acc: 0.9291
val Loss: 0.0850 Acc: 0.9680
Epoch /
----------
train Loss: 0.1596 Acc: 0.9329
val Loss: 0.1114 Acc: 0.9560
Epoch /
----------
--Call--
> /home/mine/anaconda3/lib/python3./site-packages/torch/autograd/grad_mode.py()__exit__() --> def __exit__(self, *args):
torch.set_grad_enabled(self.prev) ipdb>

5)nohup 命令 & :直接将命令放在后台运行

nohup python train_debug.py --debugFile=./debug &

如果要指定返回信息写入的日志文件log.out:

nohup python train_debug.py --debugFile=./debug >> log.out &

Linux后台命令的使用说明的更多相关文章

  1. 【转】linux ar 命令的使用说明那个和例子

    from: http://blog.csdn.net/xljiulong/article/details/7082960 linux ar 命令的使用说明那个和例子 标签: linuxmakefile ...

  2. linux ar 命令的使用说明那个和例子[转]

    用途说明 创建静态库.a文件.用C/C++开发程序时经常用到,但我很少单独在命令行中使用ar命令,一般写在makefile中,有时也会在shell脚 本中用到.关于Linux下的库文件.静态库.动态库 ...

  3. Linux后台命令导入MySQL语句

    1.首先输入命令: mysql -u root -p 然后输入MySQL的密码会进入到MySQL的命令界面. 2.输入命令use+数据库名字: use databaseName 3.最后输入命令sou ...

  4. Linux cp命令使用说明

    Linux cp命令使用说明 --功能说明:复制目录或文件 --命令格式:cp  [参数]  <文件或目录>  <文件或目录> --常用参数: -R 复制目录 -i 覆盖文件之 ...

  5. 转-Linux系统下安装rz&sol;sz命令及使用说明

    时间: 2013/03/20 | 分类: Linux常用命令 | 作者: 李坏 | 浏览:39,146 | 评论:5   对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务 ...

  6. Linux 系统下安装 rz&sol;sz 命令及使用说明

    Linux 系统下安装 rz/sz 命令及使用说明 rz/sz命令,实现将本地的文件上传到服务器或者从服务器上下载文件到本地,但是很多Linux系统初始并没有这两个命令,以下为安装和使用的具体步骤: ...

  7. linux后台启动命令-的原因

    linux后台启动命令-的原因 学习了:https://blog.csdn.net/saife/article/details/78276014 学习了:https://www.ibm.com/dev ...

  8. 【linux配置】Linux系统下安装rz&sol;sz命令以及使用说明

    Linux系统下安装rz/sz命令以及使用说明 对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,但是很 ...

  9. Linux后台执行命令:&amp&semi;和nohup nohup和&amp&semi;后台运行,进程查看及终止

    nohup和&后台运行,进程查看及终止   阅读目录 nohup和&后台运行,进程查看及终止 1.nohup 2.& 3.nohup和&的区别 &:是指在后台运 ...

随机推荐

  1. Struts2数据校验

    Struts2数据校验 1.常见数据校验方法 表单数据的校验方式: 表单中的数据必须被效验以后才能够被使用,常用的效验方式分为两种: 前台校验:也称之为客户端效验,主要是通过JS编程的方式进行表单数据 ...

  2. Java 的replace和replaceAll的使用

    (1)replace() 方法通过用 newChar 字符替换字符串中出现的所有 oldChar 字符,并返回替换后的新字符串. public String replace(char oldChar, ...

  3. android释放内存的一个办法

    step 1:定义一个监听接口 public static interface OnLowMemoryListener { void onLowMemoryReceived(); } /* 何问起 h ...

  4. 小数点输出精度控制问题 &period;xml

    pre{ line-height:1; color:#9f1d66; background-color:#d2d2d2; font-size:16px;}.sysFunc{color:#5d57ff; ...

  5. vmware10中开启Intel VT-x

    记得刚接触linux的时候,是在win7下使用vmware虚拟机来安装linux,这样就可以方便的一边使用win7娱乐,一边在linux下进行学习.后来发现这种方式使得win7很卡,虚拟机也很卡,让人 ...

  6. 2336&colon; &lbrack;HNOI2011&rsqb;任务调度 - BZOJ

    一道随机算法的题目 随便用什么随机算法 首先我们可以想到枚举类型3的最终类型,然后再做 先贪心出一个较优的序列,首先我们知道肯定是在A机器上先做完类型1的事件再做类型2的事件,机器B也类似,因为这些没 ...

  7. 201521123074 《Java程序设计》第6周学习总结

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰,内容覆盖 ...

  8. shiro中 UnknownAccountException

    一 shiro的session.request和response与服务端容器自身的这三个对象的关系 在web.xml中配置了一个Filter,拦截/*,所有的uri.在拦截器中还会调用ShiroFil ...

  9. Linux基础三

    cat:查看全部(缺点:内容较多时不方便查看) 格式:cat [选项] 文件名 常用命令选项 -n:在每一行前加上行号 [root@localhost 桌面]# cat -n /etc/passwd ...

  10. python 信息同时输出到控制台与文件

    python编程中,往往需要将结果用print等输出,如果希望输出既可以显示到IDE的屏幕上,也能存到文件中(如txt)中,该怎么办呢? 方法1 可通过日志logging模块输出信息到文件或屏幕.但可 ...