一、前言
定义
日常工作之中,不管是什么都是多方合作的,但是基本的都是三个模块构成的,分别是输入、处理、输出。
在计算机领域,管理乃至一切的功能,究其实质,终究就是对数据的处理,**连接链条的就是数据**。
上一条命令的输出信息可以存放到文件中,然后下一条命令对文件中的信息进行读取,这样就是形成完整的链条。
环环相扣
数据存在与文件中,处理数据的来源主要有两种文件:
普通文件中存放的数据 和 数据库存放的数据
实际上,对待的也有两种机制完成数据传输,就是“管道”和“重定向”
管道的作用就是吧上一条命令的输出口像流水一样通过“管道”传输到下一条命令的输入口。
至于重定向可参考这篇博客
https://blog.csdn.net/weixin_44426859/article/details/105604892
二、关于grep
1.日常管理中使用管道
1.cat 、more 、grep的比较
#cat /var/log/messages
#more /var/log/messages
#grep systemd /var/log/messages
第一条:cat—可以查看日志文件messages的内容
第二条:more—可以分屏显示文件内容,是文件内容太多,导致只能看到最后一页
内容的情况下的合适选择。显示满一页信息后,会暂停,保证阅读质量。
第三条:grep—可以筛选文件中包含指定信息**“systemd”**的行并显示内容
通常用来查找确定目标的信息,前提是对目标文件的功能和内容格式有一定的了解
2.通过上面可以简单的比较出gerp的不同
grep命令的使用
1.格式与主要命令
1)只输出匹配行的计数
grep -c
2)不区分大小写
grep -i
3)查询多文件时不显示文件名
grep -l
4)显示匹配行以及行号
grep -n
5)不显示不存在或无匹配文本的错误信息
grep -s
6)显示不包含匹配文本的所有行
grep -v
2.简单应用例子
1] 显示所有以d开头的文件中包含 test的行
itcast$ grep ‘test’ d*
2]显示在aa,bb,cc文件中匹配test的行
itcast $ grep ‘test’ aa bb cc
3]显示所有包含每个字符串至少有5个连续小写字符的字符串的行
itcast $ grep ‘[a-z]\{5\}’ aa
拓展:
‘^’: 指匹配的字符串在行首
‘$’:指匹配的字符串在行尾
三、关于tar、star、bgzip2
一、定义
tar命令可以为Linux的文件和目录创建归档
利用tar,可以为某一特定文件创建归档(备份文件),也可以在归档中改变文件,
或者向归档中加入新的文件。
二、简单应用
例子1
1、首先先创建4个实验用的文件
touch file1.txt file2.txt file3.txt file4.txt
2、选项-c: create, -v: to see the process, -f: finding 来压缩这四个文件到test.tar里
tar -cvf test.tar file1.txt file2.txt file3.txt file4.txt
3、查看test.tar里有什么文件但不解压它,可以:
tar -tf test.tar
例子2
1.想要打包一整个文件夹:如要打包/etc
tar -cvf etc_backup.tar /etc
2.解压, -x表示extract:
tar -xvf etc_backup.tar
拓展:
如何在 Linux 中压缩及解压缩 .bz2 文件
https://linux.cn/article-7964-1.html
四、关于gzip
一、定义:
减少文件大小有两个明显的好处:一是可以减少存储空间,
二是通过网络传输文件时,可以减少传输的时间。
gzip是在Linux系统中经常使用的一个
对文件进行压缩和解压缩的命令,既方便又好用。
二、gzip的使用
下载命令
yum -y install gzip
帮助命令
gzip --help
三、命令讲解
-c, --stdout write on standard output, keep original files unchanged
标准输出上执行stdout写操作,保持原始文件不变
-d, --decompress decompress
减压
-f, --force force overwrite of output file and compress links
强制覆盖输出文件并压缩链接
-h, --help give this help
帮助
-l, --list list compressed file contents
列出压缩文件内容
-L, --license display software license
许可证显示软件许可证
-n, --no-name do not save or restore the original name and time stamp
不保存或还原原始名称和时间戳
-N, --name save or restore the original name and time stamp
保存或还原原始名称和时间戳
-q, --quiet suppress all warnings
抑制所有警告
-r, --recursive operate recursively on directories
在目录上递归操作
-S, --suffix=SUF use suffix SUF on compressed files
SUF对压缩文件使用SUF后缀
-t, --test test compressed file integrity
测试压缩文件的完整性
-v, --verbose verbose mode
详细模式
-V, --version display version number
显示版本号
-1, --fast compress faster
快速压缩更快
-9, --best compress better
压缩得更好
--rsyncable Make rsync-friendly archive
创建rsync友好存档
五、gunzip的用法
gunzip的用法与gzip一样
六、bzip2的用法
对文件进行压缩,可以通过使用较少的字节对文件中的数据进行编码来
显著地减小文件的大小,
并且在跨网络的文件的备份和传送时很有用。
另一方面,解压文件意味着将文件中的数据恢复到初始状态。
下载命令
yum -y install bzip2
帮助命令
bzip2 --help
命令查看
二、命令详解
-h --help print this message
-d --decompress force decompression
解压
-z --compress force compression
压缩
-k --keep keep (don't delete) input files
保留(不删除)输入文件
-f --force overwrite existing output files
**强制**覆盖现有输出文件
-t --test test compressed file integrity
测试压缩文件完整性
-c --stdout output to standard out
标准输出
-q --quiet suppress noncritical error messages
安静抑制非关键错误消息
-v --verbose be verbose (a 2nd -v gives more)
verbose是verbose(第二个-v给出更多)
-L --license display software version & license
许可证显示软件版本和许可证
-V --version display software version & license
版本显示软件版本和许可证
-s --small use less memory (at most 2500k)
占用较少内存(最多2500k)
-1 .. -9 set block size to 100k .. 900k
-1..-9将块大小设置为100k..90万
--fast alias for -1
1的快速别名
--best alias for -9
9的最佳别名