码迷,mamicode.com
首页 > 系统相关 > 详细

<实训|第十一天>学习一下linux中的进程,文件查找,文件压缩与IO重定向

时间:2016-08-04 22:49:04      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:

[root@localhost~]#序言
  在今后的工作中,运维工程师每天的例行事务就是使用free -m,top,uptime,df -h。。。
每天都要检查一下服务器,看看是否出现异常。那么今天我们就讲解一下关于运维工程师例行事务的知识!

技术分享技术分享


 开班第十一天:

 

[root@localhost~]#今天的课程大纲
  1. 查看进程,中断进程,切换进程
  2. 内存与swap分区
  3. linux中文件查找的基本方法
  4. linux中是如何解压缩文件的
  5. 关于I/O重定向的知识点
  6. 远程scp配合管道

 

详细讲解:

 

[root@localhost~]#查看进程,中断进程,切换进程
  
查看进程,我们一般使用ps或者top来查看,ps可以查看当前终端运行的进程。
ps -ef和ps aux可以查看当前系统所有的进程,top也可以查看运行的进程,通过M来按照内存排序,P按照cpu的使用率来排序。
技术分享

 ②中断进程,在使用top查看当前的进程时候,我们可以通过kill + pid来结束某个进程。也可以使用pkill/killall + 进程名,
不过这种方法尽量少用或者不用,因为你会杀掉某个含有你进程名的重要进程,除非在你非常确定的情况下。

这里有必要说一下kill的理解,kill的本质并不是结束进程,很多人都会理解为杀掉。

但这是我们口头说的,kill的本质其实是对进程发送信号,-1信号重启,-15信号是让进程自己退出,-9信号是系统强制结束某个进程。我们一般情况下,尽量慎重-9,原因你可以想象一下。

   ③后台任务进程的切换,假如我们使用命令:firefox &,这代表我们启动firefox,但是是后台启动,我们可以使用jobs来查看当前后台运行的任务,fg %num可以把firefox放到前台运行,只用ctrl+c来终止firefox。我们也可以使用ctrl+z来停止当前的firefox,可以使用bg %num来解停止状态。前面说的杀死进程,这我们也可以使用kill +num来结束某个任务。

[root@localhost~]#内存与swap分区
在linux中,内存也是一个很重要的方面,我们可以使用free -m来查看当前的内存使用情况。
这也是一个运维工程师每天必须要关注的。
下图中我们可以看到我们的内存使用情况,那么大家知道我现在系统中干净内存和总共可使用内存各是多少吗?
干净内存=free=1392,总共可使用内存=free+cached=1392+177,这个值跟1595接近,
所以我们每天可以直接看1595那个值来估计内存的事情的情况。
技术分享
 上面有一个swap分区,这个分区的存在是为了缓解我们linux系统中内存不足的情况,当我们的系统中的内存使用情况比较紧缺的   时候,这时候系统就会把swap分区暂时当做内存来使用,关于swap分区设置的大小我们可以根据电脑实际内存来控制,一般就是 为实际内存的两倍。

[root@localhost~]#linux中文件查找的基本方法
文件找在linux中是一项非常重要的技能,一个运维工程师要做到随心所欲的在系统中寻找到自己想要的文件。
我们在linux中常使用的文件查找方法有find和locate。①find命令。很多很多参数,我就简单写几个,如果不懂的可以查看man手册。

  find /文件路径 -name "*.iso" 通过文件名查找

  find /文件路径 -iname "*.iso" 查找不区分大小写

  find /文件路径 -inum "num" 通过inodenum查找硬链接的文件

  find /文件路径 -size +4G 查找文件大于4G的文件

  find /文件路径 -perm 777 查找权限为777的文件

 ②通过locate来查找文件,locate -b +直接文件名,查找出来的是带上文件路径一起查的。

  这里我说一下find和locate的区别:find查找文件的原理是扫描磁盘,locate查找文件的原理是查找自己的数据库,所以find的速度较慢,但是文件搜索精确,locate速度较快,但是更新较慢。locate在每天会执行周期任务,从而更新自己的数据库,如果你现在新建一个文件,通过locate是查找不到的,或许明天早上你就能查找到了。

[root@localhost~]#linux中是如何解压缩文件的
linux中打包和压缩的概念是完全不同的两个概念,所以不要弄混,打包是把几个文件放在一起,压缩才是跟windows中压缩差不多的概念。
windows和linux文件共享,两个系统都识别的文件格式是zip,所以以zip文件传输是最好的,zip a.zip,unzip a.zip.

linux中常用的压缩文件格式有gz和dz2,我说一下他们创建压缩文件具体的流程:创建tar包-->压缩tar包-->解压tar包-->解tar包,但是实际中我们没必要一步一步完成,直接两步进行到底。

 ①gz格式:tar czvf a.tar.gz b/ tar xvf a.tar.gz,分别是gz格式的压缩和解压。

 ②dz2格式:tar cjvf a.tar.dz2 b/ tar xvf a.tar.dz2,分别是dz2格式的压缩和解压。

其实可以看出解压是一样的,因为解压的时候会自动判定压缩包的格式。其中解压的时候我们可以使用参数-C来确定解压的路径。

我们可以在不解压的情况下查看压缩包的内容,tar tf a.tar.gz,也可以解压其中的某一个文件出来,tar xvf a.tar.gz b/a.txt。

[root@localhost~]#关于I/O重定向的知识点
在linux中,我们有三个标准的输入输出,标准输出stdout,标准错误输出stderr,标准输入stdin,他们的文件描述符分别是1,2,0。下面演示一个例子:
例子说:a.txt存在,b.txt不存在,使用ls的时候,b.txt是stdout,a.txt是stdout,所以全部重定向&>到io.txt中,会显示一个错误,一个正常。
技术分享
这里讲一下键盘输入,管道输入都是标准输入。linux中需要了解的一个here document和here string。

here document:cat>file<<EOF,我们从键盘输入,然后成为一个文件内容。

 

here string:bc<<<12+23,表示计算器从字符串中读取数据来进行计算。

[root@localhost~]#远程scp配合管道
我们一般使用scp来远程拷贝文件,一般的命令为:scp root@ip地址:/路径 /路径。
说道scp,不得不说说ssh了,在今后很多情况下,我们都是需要通过ssh来远程服务器,修复维护等。
在很多情况下,我们可以使用ssh默认不登录的进行远程的监控:
例如:ssh root@ip "uptime",查看系统运行了多长时间了,uptime也可以换成各种命令。看,我的服务器已经运行182天了。技术分享
当然,我们也可以是用ssh进行远程文件的压缩拷贝传输:
  ssh root@ip地址 "cd / && tar -c 目录 | gzip -f" |tar -xzf-
意思就是远程创建一个tar包,使用gzip压缩,然后通过管道重定向传输到本地。压缩文件的传输,剩了好多流量。

 总结:

[root@localhost~]#来自爱家人爱老婆的IT男
今天的重点是进程和文件查找,以及重定向,希望大家好好学习,天天向上!喜欢的朋友可以点一下订阅,非常感谢大家的支持!
博客园:爱家人爱老婆的IT男
QQ群:145252709,我会上传资源,同时会有很多大神跟你们讨论学习分享 
微信公众号:程序猿的野生香蕉【获取文章中出现的工具】
 

<实训|第十一天>学习一下linux中的进程,文件查找,文件压缩与IO重定向

标签:

原文地址:http://www.cnblogs.com/bokeyuanlibin/p/5738408.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!