博主CSDN主页:杭电码农-NEO
⏩专栏分类:Linux从入门到开通⏪
代码仓库:NEO的学习日记
关注我带你学更多操作系统知识
本篇文章紧接着前两篇:
linux指令(上) 和 linux指令(中)
如果你是零基础,请先移步前两篇文章!
本章重点:
head
和tail
find
zip
和tar
Linux的基本指令的最后几个
将在本章全部讲解完毕!
已知more,less,cat指令
可以读取文件的内容并且打印在屏幕上
但在实际生活中,往往不会查看所有数据
比如我只想读前十行或后十行的数据:
使用指令:
head -n 文件名
使用指令:
tail -n 文件名
注:-n的n代表想读取的前/后n行
并且-n可以缺省,默认读取前/后十行
我的目录下有这些文件:
其中,small.txt中存放了0~1000个数据
取前30行:
取后30行:
假设需要查看第500~550行的数据
此时直接用head或tail不能解决问题
解决方法:定义一个临时文件
根据这个图片流程,我们编写指令:
使用临时文件的方法确实可解决问题
但是未免太麻烦了!
先说结论,可以这样简化指令:
head -550 small.txt | tail -50
对指令的解释:
指令中出现的
|
符号被称为管道
它可以充当临时文件的作用
将前550行的内容存放在管道中
并且在使用tail时从管道中拿数据!
可以这样理解管道:
虽然这个指令比较鸡肋
但是还是要做了解!
使用指令:
date +选项
date的几个常见选项给罗列出来:
%H : 小时(00…23)
%M : 分钟(00…59)
%S : 秒(00…61)
%X : 相当于 %H:%M:%S
%d : 日 (01…31)
%m : 月份 (01…12)
%Y : 完整年份 (0000…9999)
%F : 相当于 %Y-%m-%d
比如:
时间戳是指:
从1970年1月1日到现在经过的秒数
在Linux下查看当前时间戳:
使用指令:
date +%s
时间戳在实际生活中有许多应用场景
想要了解更多详情可以跳转:
时间戳的实际意义
查找一个文件或目录的路径:
使用指令:
find -name 文件/目录名
我的机器下的文件树是这样的:
假设我想要找出d3的位置:
它会把所有包含d3名字的文件/目录
的路径打印在屏幕上!
which指令:
用于查看一个指令的所在路径:
用于给一个指令取别名
比如我想将ll指令改名为NEO:
此时再使用which指令查看NEO:
系统会告诉我NEO是ll的别名
指令grep的功能:
在文件中搜索字符串,将找到的行打印出来
比如我的hello.txt中有这些内容:
想要找到有字符"1"的一行:
所有有’1’的一行都会被打印出来!
grep拓展选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行
压缩一个文件:
使用指令:
zip 压缩文件名.zip 要压缩的文件
例如将good.txt压缩一下:
当前目录下会多出一个红色的压缩文件
假设要压缩一个目录下所有的文件:
使用指令:
zip -r xxx.zip xxx文件
使用指令:
unzip 要解压的文件
或指令:
unzip xxx -d 指定路径
例如要解压刚刚压缩的good.txt:
当然!使用第一个指令默认解压到当前路径
压缩/解压缩的指令有很多
我们常见的压缩文件后缀也有很多
这里介绍两个最常见的!
使用指令:
tar [-cxtzjvf] xxx.tgz xxx
其中的cxtzjvf是不同的参数:
-c :建立一个压缩文件的参数指令
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?
-j :是否同时具有 bzip2 的属性?
-v :压缩的过程中显示文件!!
-f :使用档名,f后不能再跟任何参数
-C : 解压到指定目录
比如要压缩small.txt文件:
比如要解压方才的压缩文件到d2目录:
注:
压缩一个文件的常见选项:czf
解压缩一个文件常见选项:xzf
最前面的c和x不能改变,后面的选项随意
Linux下的常见指令已经全部介绍完毕!
当然Linux学习不止是学习指令
Linux下的指令是学不完的!
更多的还是理解Linux运作的内部细节!
拓展:
Linux下常见的热键有:
对于TAB键的解释:
当你想输入指令which时
但是你忘记它怎么拼写了
这时你输入一个whi然后按TAB键
系统会自动帮你补齐指令
若以whi开头的指令不止一个
系统将会把所有whi开头的指令打印出来!
按一次TAB没反应就多按几次