进程管理
进程
程序运行在操作系统中,是被操作系统所管理的。
为管理运行的程序,每一个程序在运行的时候,便被操作系统注册为系统中的一个:进程
并会为每一个进程都分配一个独有的:进程ID(进程号)
查看进程
可以通过ps命令查看Linux系统中的进程信息
语法:ps [-e -f]
选项:-e,显示出全部的进程
选项:-f,以完全格式化的形式展示信息(展示全部信息)
一般来说,固定用法就是:ps -ef列出全部进程的全部信息
注:截图转自黑马程序员免费教学视频
问:ppid为0代表什么?
答:
在 Linux 系统中,ppid
是指一个进程(pid
)的父进程的进程 ID。ppid
为 0 表示该进程的父进程是 init 进程,也就是 systemd 或 System V init 进程(进程 ID 通常为 1)。在 Linux 启动时,第一个进程被称为 init 进程,它是系统所有进程的祖先进程。所以,当一个进程的 ppid
为 0 时,意味着它的父进程已经终止或不存在,系统 init 进程接管了该进程。
查看指定进程
1、在FinalShell中,执行命令:tail,可以看到,此命令一直阻塞在那里
2、在FinalShell中,复制一个标签页,执行:ps -ef找出tail这个程序的进程信息
我们可以使用管道符配合grep来进行过滤,如:
ps -ef | grep tail,即可准确的找到tail命令的信息
关闭进程
语法:kill [-9] 进程ID
选项:-9,表示强制关闭进程。不适用此项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。
查看系统资源占用
可以通过top命令查看CPU、内存使用情况,类似Windows的任务管理器
默认每5秒刷新一次,语法:直接输入top即可,按q或ctrl+c退出
top命令内容详解
1、PID:进程id
2、USER:进程所属用户
3、PR:进程优先级,越小越高
4、NI:负值表示高优先级,正表示低优先级
5、VIRT:进程使用虚拟内存,单位KB
6、RES:进程使用物理内存,单位KB
7、SHR:进程使用共享内存,单位KB
8、S:进程状态(S休眠,R运行,Z僵尸状态,N负数优先级,I空闲状态)
9、%CPU:进程占用CPU率
10、%MEM:进程占用内存率
11、TIME+:进程使用CPU时间总计,单位10毫秒
12、COMMAND:进程的命令或名称或程序文件路径
top命令选项
top命令也支持选项:
选项 功能
-p只显示某个进程的信息
-d设置刷新时间,默认是5S
-c显示产生进程的完整命令,默认是进程名
-n指定刷新次数,比如top -n 3,刷新输出3次后退出
-b以非交互非全屏模式运行,以批次的方式执行top,一般配合-n指定输出几次统计信息,将输出重定向到指定文件,比如top -b -n 3 > /tmp/top.tmp
-i不显示任何限制(idle)或无用(zombie)的进程
-u查找特定用户启动的进程
top交互式选项
磁盘信息监控
1、使用df命令,可以查看磁盘的使用情况
语法:df [-h]
选项:-h,以更加人性化的单位显示
2、使用iostat查看CPU、磁盘的相关信息
语法:iostat [-x] [num1] [num2]
1)、选项:-x,显示更多信息
2)、num1:数字,刷新间隔,num2:数字,刷新几次
tps:该设备每秒的传输次数(Indicate the number of transfers per second that were issued to the device.)。“一次传输”意思是“一次I/O请求”。多个逻辑请求可能会被合并为“一次I/O请求”。“一次传输”请求的大小是未知的。
截图转自黑马程序员免费教学视频
网络状态监控
可以使用sar命令查看网络的相关统计(sar命令非常复杂,这里仅简单用于统计网络)
语法:sar -n DEV num1 num2
选项:-n,查看网络,DEV表示查看网络接口
num1:刷新间隔(不填就查看一次结束),num2:查看次数(不填无限次数)
环境变量
环境变量是操作系统在运行的时候,记录的一些关键性信息,用以辅助系统运行。
在Linux系统中执行:env命令即可查看当前系统中记录的环境变量
环境变量是一种KeyValue型结构,即名称和值、
$符号
在Linux系统中,$符号被用于取“变量”的值。
环境变量记录的信息,除了给操作系统自己使用外,如果我们想要取用,也可以使用。
取得环境变量的值就可以通过语法:$环境变量名 来取得
当和其它内容混合在一起的时候,可以通过{}来标注取的变量是谁
自行设置环境变量
Linux环境变量可以用户自行设置,其中分为:
1、临时设置,语法:export 变量名=变量值
2、永久生效
自定义环境变量PATH
自建一个小脚本:
添加环境变量使得在任何地方都可以使用这个脚本:
上传、下载
1、通过FinalShell工具,方便的和虚拟机进行数据交换。
2、rz、sz命令
rz、sz命令需要安装,可以通过:yum -y install lrzsz,即可安装。
rz命令,进行上传,语法:直接输入rz即可
sz命令进行下载,语法:sz 要下载的文件
文件会自动下载到桌面的:fsdownload文件夹中。
压缩格式
1、zip:Linux、Windows、MacOS,常用
2、7zip:Windows常用
3、rar:Windows常用
4、tar:Linux、MacOS,常用
5、gzip:Linux、MacOS,常用
tar命令
Linux和Mac系统常用有2种压缩格式,后缀名分别是:
1、.tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装。
2、.gz,也常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积
针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作
语法:tar [-c -v -x -f -z -C] 参数1 参数2 … 参数N
1、-c,创建压缩文件,用于压缩模式
2、-v,显示压缩、解压过程,用于查看进度
3、-x,解压模式
4、-f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
5、-z,gzip模式,不使用-z就是普通的tarball格式
6、-C,选择解压的目的地,用于解压模式
tar命令压缩
tar的常用组合为:
1、tar -cvf test.tar 1.txt 2.txt 3.txt
将1.txt 2.txt 3.txt压缩到test.tar文件内
2、tar -zcvf test.tar 1.txt 2.txt 3.txt
将1.txt 2.txt 3.txt压缩到test.tar文件内,使用gzip模式
注意:
1、-z选项如果使用的话,一般处于选项位第一个
2、-f选项,必须在选项位最后一个
tar解压
常用的tar解压组合有
tar -xvf test.tar
解压test.tar,将文件解压至当前目录
tar -xvf test.tar -C /home/chung
解压test.tar,将文件解压至知道你目录(/home/chung)
tar -zxvf test.tar.gz -C /home/chung
以Gzip模式解压test.tar.gz,将文件解压至指定目录(/home/chung)
注意:
1、-f选项,必须在选项组合体的最后一位
2、-z选项,建议在开头位置
3、-C选项单独使用,和解压所需的其他参数分开
zip命令压缩文件
可以使用zip命令,压缩文件为zip压缩包
语法:zip [-r] 参数1 参数2 … 参数N
1、-r,被压缩的包含文件夹的时候,需要使用-r选项,和rm、cp等命令的-r效果一致
zip命令解压文件
使用unzip命令,可以方便的解压zip压缩包
语法:unzip [-d] 参数
1、-d,指定要解压去的位置,同tar的-C选项
2、参数,被解压的zip压缩包文件