筛选数据
grep命令: 筛选数据,全局搜索一个正则表达式,并打印。简单说就是在文件中搜索关键字并显示关键字所在的行。使用方法 grep 关键字 供搜索的文件
。-i
忽略大小写grep -i path /etc/profile
;-n
显示行号;-v
相当于反向搜索,只显示没有关键字的行;-r
递归搜索 在所有子目录和子文件查找;-E
使用正则表达式 例如 grep -E ^page /etc/profile
。
流 管道 重定向
重定向:把本来要显示在终端的命令结果,输送到别的地方
管 道:把两个命令连起来使用,一个命令的输出作为另一个命令的输入
流:一组有序的数据序列
cut命令: -d
是分隔符,-f
是区域。
>:重定向到一个文件,如果这个文件不存在会新建一个文件,如果存在会覆盖文件内容。
>>:重定向到文件的末尾,如果这个文件不存在会新建一个文件,如果存在会追加到文件末尾。
文件描述符实际上是一个索引值,指向操作系统内核为每个进程所维护的该进程打开文件的记录表。当进程打开或创建一个文件时,内核向进程返回一个文件描述符号,1代表标准输出,2代表标准错误输出。
2>和2>>:2代表标准错误输出的文件描述符,会将错误信息输出到文件中。
2>&1:将标准错误输出重定向到和标准输出相同的地方。如果是追加,cut -d ,-f 1 file.txt>>file1.txt 2>&1
只是在中间由>改为>> 不是2>>&1。
|管道 : 可以将两个命令连起来使用,简单的说就是将一个命令的输出作为另外一个命令的输入。 例如cut -d ,-f 1 file.txt | sort
会打印出file.txt文件逗号分隔后的第一部分区域然后再排序。
进程
top命令:
实时监控进程的动态列表。
后台运行进程:
1.&
直接在命令后面加一个 &
符号。使用&
后台进程和终端会相关联,一但终端关闭或者用户登出进程自动结束。
2.nohup
在命令之前加nohup
,使进程和终端分离。
文件的压缩和归档
首先要 弄清两个概念:打包和压缩。
打包是指将一大堆文件或目录什么的变成一个总的文件,
压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
为什么要区分这两个概念呢?其实这源于Linux中的很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你就得先借助其它的工具将这一大堆文件先打成一个包,然后再用原来的压缩程序进行压缩。
创建归档
tar归档命令:tar -cvf a.tar a/
,将a目录归档为a.tar,c:create的缩写表示创建,v:verbose的缩写表示冗余 会显示操作的细节,f:file表示文件指定归档文件。下图在compression文件中有a目录执行tar
命令将a目录归档为a.tra。
也可以多个文件一起归档,不需要先放入一个文件,命令为tar -cvf a.tar file1.txt file2.txt file3.txt
。
tar -tf a.tar
显示归档内容。
tar -rvf a.tar file.txt
,追加一个文件到已有归档。
tar -xvf a.tar
是tar -cvf a.tar a/
的相反操作,x是extract的缩写,表示提取
压缩归档和解压:
gzip a.tar
后缀:.tra.gz。解压 gunzip a.tar
bzip2 a.tar
后缀:.tra.bz2。解压 bunzip2 z.tar
使用tar一步解压压缩:tar -zcvf a.tar.gz a/
对接解压tar -zxvf a.tar.gz
tar -jcvf a.tar.bz2 a/
对接解压 tar -jxvf a.tar.gz
使用zip压缩和unzip解压:
解压zip的压缩包:unzip file.zip
,如果没有unzip安装命令为yum install unzip
压缩为zip文件:zip -r file/
,-r为递归操作
软件安装
.rpm包
这种软件安装包通常是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。rpm是编译过的可执行二进制文件包,但是如果安装过程中需要依赖与其他程序就必须安装对应的依赖项
-i:安装一个新的rpm软件包
-h:以“#”号显示安装的进度
-v:显示安装过程中的详细信息
–force:强制安装所指定的rpm软件包
–nodeps:安装软件时,忽略依赖关系
安装命令rpm -ivh .rpm文件
yum简介
yum 是一个软件包管理器,就是一个软件仓库,一般在安装完一个虚拟机的时候第一时间就是设置它的yum 仓库, 因为只有这样我们才可以轻松的安装 redhat 官方提供给我们的各种工具包。
rpm软件包形式的管理虽然方便,但是需要手工解决软件包的依赖关系。很多时候安装一个软件安装一个软件需要安装1个或者多个其他软件,手动解决时,很复杂。yum解决这些问题。Yum是rpm的前端程序,主要目的是设计用来自动解决rpm的依赖关系
yum的仓库的配置文件在 /etc/yum.repos.d/CentOS-Base.repo
修改yum仓库
1.备份mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2.下载阿里云给的配置文件wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3.运行yum生成缓存yum makecache
安装软件包yum install -y 软件包名
卸载软件包yum remove 软件包名
编译安装源码包
该方法安装时间会比较长,需要编译,而上面的两种方法本身已经是可执行的二进制文件
1.下载源码wget https://www.rarlab.com/rar/rarlinux-x64-5.7.0.tar.gz
2.解压源码tar -zxvf rarlinux-x64-5.7.0.tar.gz
3.编译源码cd 解压后的文件
4.检查安装环境./configure
确定安装目录:./configure --prefix=/usr/local/目录
,该步骤可以省略,尽量使用默认
5.解压后会有一个makefile文件,在该文件目录下进行编译make
一旦编译出错,可使用make clean
,清除之前的编译
6.编译后安装
make install
备注:make与make install命令可以合写成一行