Linux的程序怎么管理
本篇内容主要讲解"Linux的程序怎么管理",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Linux的程序怎么管理"吧!
程序与程序 (process & program)
程序 (program):通常为 binary program ,放置在储存媒体中 (如硬盘、光盘、软 盘、磁带等), 为实体文件的型态存在;
程序 (process):程序被触发后,执行者的权限与属性、程序的程序码与所需数据等都 会被载入内存中, 操作系统并给予这个内存内的单元一个识别码 (PID),可以说,程 序就是一个正在运行中的程序。
工作管理 (job control)
直接将指令丢到背景中"执行"的 &
tar -zpcvf /tmp/etc.tar.gz /etc &
将"目前"的工作丢到背景中"暂停":[ctrl]-z
想个情况:如果我正在使用 vim ,却发现我有个文件不知道放在哪里,需要到 bash 环境下进 行搜寻,此时是否要结束 vim 呢?呵呵!当然不需要啊!只要暂时将 vim 给他丢到背景当中 等待即可。 例如以下的案例:
[root@study ~]# vim ~/.bashrc# 在 vim 的一般模式下,按下 [ctrl]-z 这两个按键[1]+ Stopped vim ~/.bashrc[root@study ~]# <==顺利取得了前景的操控权![root@study ~]# find / -print....(输出省略)....# 此时屏幕会非常的忙碌!因为屏幕上会显示所有的文件名。请按下 [ctrl]-z 暂停[2]+ Stopped find / -print
观察目前的背景工作状态: jobs
将背景工作拿到前景来处理:fg
让工作在背景下的状态变成运行中: bg
管理背景当中的工作: kill
离线管理问题
要注意的是,我们在工作管理当中提到的"背景"指的是在终端机模式下可以避免 [crtl]-c 中断 的一个情境, 你可以说那个是 bash 的背景,并不是放到系统的背景去喔!所以,工作管理 的背景依旧与终端机有关啦! 在这样的情况下,如果你是以远端连线方式连接到你的 Linux 主机,并且将工作以 & 的方式放到背景去, 请问,在工作尚未结束的情况下你离线了,该工 作还会继续进行吗?答案是"否"!不会继续进行,而是会被中断掉。 那怎么办?如果我的工作需要进行一大段时间,我又不能放置在背景下面,那该如何处理 呢? 首先,你可以参考前一章的 at 来处理即可!因为 at 是将工作放置到系统背景, 而与终 端机无关。如果不想要使用 at 的话,那你也可以尝试使用 nohup 这个指令来处理喔!这个 nohup 可以让你在离线或登出系统后,还能够让工作继续进行。他的语法有点像这样:
# 1\. 先编辑一支会"睡着 500 秒"的程序:[root@study ~]# vim sleep500.sh#!/bin/bash/bin/sleep 500s/bin/echo "I have slept 500 seconds."# 2\. 丢到背景中去执行,并且立刻登出系统:[root@study ~]# chmod a+x sleep500.sh[root@study ~]# nohup ./sleep500.sh &[2] 14812[root@study ~]# nohup: ignoring input and appending output to `nohup.out' <==会告知这个讯息![root@study ~]# exit
程序管理
ps :将某个时间点的程序运行情况撷取下来
观察系统所有程序: ps aux
top:动态观察程序的变化
pstree
到此,相信大家对"Linux的程序怎么管理"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!