前后台 工作切换---------------Linux 任务管理器(一)
继续下一章。。。
发现了一个好东东。就是前后台的切换。例如我们现在要vim一个文件。然后又要查找一些命令的时候,以前不知道,都是退出后,查完了,在vim进入。现在我们可以将该vim拿到后台,然后查完了再唤醒vim。。。。很爽。OK,看程序
[root@localhost ~]# vim ~/.bashrc
按下ctrl+z,将vim置于后台,然后再执行一个命令
[root@localhost ~]# find / -print
再按下ctrl+z,继续置于后台中
[root@localhost ~]# jobs -l 查找后台运行的进程
[]+ 停止 vim ~/.bashrc # +号表示的是排序,意思当我们fg而不确定指向前台运行哪个命令的时候,默认的都是最后退出的命令
[]- 停止 find / -print
[root@localhost ~]# fg
它默认就会进入 带加号的那个程式,也就是VIM
当我们要明确进入哪个程式的时候,就可以
[root@localhost ~]# fg %
强行执行第一个程式 上面就是前后台切换的命令。就几点,ctrl+z将命令置于后台 jobs -l查询后台运行的进程 fg 默认启用最后退出的进程 fg %数字 启用指定的进程
jobs 命令的参数详解

上面介绍了,前后台切换,那如果想让某个进程在后台运行的话,需要怎么操作呢?
启用bg命令
[root@localhost ~]# find / -perm / > /tmp/text.txt
find: ‘/proc//task//fdinfo/’: 没有那个文件或目录
find: ‘/proc//task//fdinfo/’: 没有那个文件或目录
^Z
[]+ 已停止 find / -perm / > /tmp/text.txt
[root@localhost ~]# jobs
[]- 已停止 vim ~/.bashrc
[] 已停止 find / -print
[]+ 已停止 find / -perm / > /tmp/text.txt #ctrl+z,他是停止的
[root@localhost ~]# jobs ; bg % ; jobs 当我们bg %3 在后台执行3的时候
[]- 已停止 vim ~/.bashrc
[] 已停止 find / -print
[]+ 已停止 find / -perm / > /tmp/text.txt
[]+ find / -perm / > /tmp/text.txt &
[]+ 已停止 vim ~/.bashrc
[] 已停止 find / -print
[]- 运行中 find / -perm / > /tmp/text.txt & #他开始在后台执行,前面有个运行中,还有就是最后的 & 符号
Kill命令

脱机管理问题
当你远程连接Linux进行工作时,如果你操作命令,在后台运行的时候ctrl+c,这时候如果你因为某些原因脱机了,那么你的工作将会被中断。因为,我们在此操作的时候,指的是工作环境下的前台和后台,而非进程内的后台服务。
而如果要实现真正的后台运行,则需要用at服务来运行,或者用nohup来执行

nohub执行的是命令。也就是启用一个线程来执行相关命令。这个命令就是一个脚本命令,而非像上面在工作目录中,直接在bash中内建的命令。有点拗口。。。
说白了,at,nohub就是启用新线程执行命令服务。
上文提到的ctrl+z等的前后台切换,是在bash命令中进行的前后切换。
既然如此,如果你注销或者退出,则bash命令也会随之退出。所以命令就会停止执行。但是如果用at,nohub服务来执行,那你退出,线程依然是在开启的,程序就不会退出执行。
一个是基础工作环境的bash,一个是基于后台线程的服务。
运用nohub,首先需要建立一个一个sh的shell脚本。然后才能用nohup 来执行该脚本。前后台的区别就在于&符号
为了验证,你可以退出后再登入,利用pstree -up查找

表明确实达到了要求,kill杀死这个进程 14599
进程观察 ps top pstree

[root@localhost ~]# ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
S - do_wai pts/ :: bash
R - - pts/ :: ps



top 动态观察进程变化 就是任务管理器


top -d 2
2秒观察进程信息

查看某个进程的情况,可以利用$$来找出自己的bash的PID的值,然后top 一下
[root@localhost ~]# echo $$ [root@localhost ~]# top -d -p

这就是这个进程的相关信息

pstree


找出目前系统上已在监听的网络联机及其PID
[root@localhost ~]# netstat -tulnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0.0.0.0: 0.0.0.0:* LISTEN /systemd
tcp 0.0.0.0: 0.0.0.0:* LISTEN /X
tcp 192.168.122.1: 0.0.0.0:* LISTEN /dnsmasq
tcp 0.0.0.0: 0.0.0.0:* LISTEN /sshd
tcp 127.0.0.1: 0.0.0.0:* LISTEN /cupsd
tcp 127.0.0.1: 0.0.0.0:* LISTEN /master
tcp6 ::: :::* LISTEN /systemd
tcp6 ::: :::* LISTEN /X
tcp6 ::: :::* LISTEN /sshd
tcp6 ::: :::* LISTEN /cupsd
tcp6 ::: :::* LISTEN /master
udp 192.168.122.1: 0.0.0.0:* /dnsmasq
udp 0.0.0.0: 0.0.0.0:* /dnsmasq
udp 0.0.0.0: 0.0.0.0:* /systemd
udp 0.0.0.0: 0.0.0.0:* /avahi-daemon:
udp 127.0.0.1: 0.0.0.0:* /chronyd
udp 0.0.0.0: 0.0.0.0:* /avahi-daemon:
udp 0.0.0.0: 0.0.0.0:* /rpcbind
udp6 ::: :::* /systemd
udp6 ::: :::* /chronyd
udp6 ::: :::* /rpcbind
dmesg分析系统核心产生的信息

vmstat 侦测系统资源变化

前后台 工作切换---------------Linux 任务管理器(一)的更多相关文章
- Linux学习笔记(16)Linux前后台进程切换(fg/bg/jobs/ctrl+z)
关键词:Linux前后台进程切换,linux进程切换 fg.bg.jobs.&.ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的一.& ...
- Linux任务前后台的切换(转)
Linux任务前后台的切换 Shell支持作用控制,有以下命令实现前后台切换: 1. command& 让进程在后台运行 2. jobs 查看后台运行的进程 3. fg %n 让后台运行的 ...
- Linux任务前后台的切换
Shell支持作用控制,有以下命令实现前后台切换: 1. command& 让进程在后台运行 2. jobs 查看后台运行的进程 3. fg %n 让后台运行的进程n到前台来 4. bg %n ...
- 【Linux】fg、bg让你的进程在前后台之间切换
Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行.比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作:而一些服务型的 ...
- 关于Linux前后台进程切换
前言: 当使用SSH远程登录服务器时,对于运行时间较长的程序(如Caffe的训练可能需要十几个小时), SSH可能会在很长时间后断掉,导致程序没运行完就中断了. 为了解决这个问题,需要将在服务器运行的 ...
- Linux前后台进程切换
(1).Linux前台进程与后台进程的区别 前台进程:是在终端中运行的命令,那么该终端就为进程的控制终端,一旦这个终端关闭,这个进程也随之消失. 后台进程:也叫守护进程(Daemon),是运行在后台的 ...
- Linux中进程在前后台的切换
把进程放入后台执行 tar -zcf etc.tar.gz /etc &把进程放入后台暂停 在命令执行的过程中,按下ctrl+z 查看后台的命令 jobs[root@localhost tem ...
- linux前后台任务切换管理
liuyuan@ebuinfo:/var/www/projects/PHPExcel/Examples$ vi 33chartcreate-line.php & [] liuyuan@ebui ...
- 浅谈 linux 例行性工作 crontab (linux定时任务)
定时任务大家都挺说过,就好比你手机上的闹钟,到了指定的时候就会响起. 今天在对redis缓存进行定时储存时又操作了一把,发现一些细节,写的不好.大家就将就看吧, 首先 简单介绍一下linux 例行性工 ...
随机推荐
- 修改bug 提交出错:操作失败: 无法更改关系,因为一个或多个外键属性不可以为 null
提交出错:操作失败: 无法更改关系,因为一个或多个外键属性不可以为 null.对关系作出更改后,会将相关的外键属性设置为 null 值.如果外键不支持 null 值,则必须定义新的关系,必须向外键属性 ...
- picker多级选择器的使用————小程序
picker多级选择器的使用----小程序 picker是选择器来着,既然选择了,就希望可以获取选择的数据. index.html <view>picker获取数据</view> ...
- linux---postgresql的安装和配置
postgresql的安装:源码安装(推荐):http://my.oschina.net/hippora/blog/375292 1.tar -xjvf postgresql-9.3.4.tar.bz ...
- Kotlin之let,apply,with,run函数区别(转)
转自:https://blog.csdn.net/guijiaoba/article/details/54615036 Kotlin之let,apply,with,run函数区别 重新整理 重新整理了 ...
- iSkysoft iMedia Converter Deluxe Mac如何制作视频?视频格式转换工具制作动图的方法
使用iSkysoft iMedia Converter Deluxe Mac如何制作视频?使用视频格式转换工具,你可以轻松进行动图或视频的制作,也可以把你喜欢的视频的某一段提取出来,制作成你自己风格的 ...
- MariaDB 建立连接
与MariaDB建立连接的一种方法是在命令提示符下使用mysql二进制文件. MySQL脚本 查看下面给出的示例. [root@host]# mysql -u root -p Enter passwo ...
- 每天一个linux命令:nl(12)
nl nl命令读取 file 参数(缺省情况下标准输入),计算输入中的行号,将计算过的行号写入标准输出.在输出中,nl命令根据您在命令行中指定的标志来计算左边的行.输入文本必须写在逻辑页中.每个逻辑页 ...
- 大碗宽面Alpha第九周会议总结
软件工程每周博客: 本周二我们进行了小组会议,对正在做的评课网站——海大优选进行了整体分析和明确分工.首先我们对整体网页进行了需求分析和框架分析,然后进行了分工,前端同学两人,后端同学两人,文档同学一 ...
- teradata在虚拟机安装客户端sql Assistant
学习链接:https://www.w3cschool.cn/teradata/? 1.安装过程
- springmvc缓存 - cache
前几篇文章已经搭建了一个基本的springmvc demo,现在我们来完善下. 相信大家写程序的时候都接触过缓存的概念,也都知道,数据量大的时候缓存对于提高效率是很显著的.而缓存一般包括前台静态 ...