每日鸡汤:
古之成大事者,不惟有超世之才,亦有坚忍不拔之志。
目录
一、查找指令
1、find指令(重要) -name
2、which命令
3、alias指令
4、whereis指令
二、字符串匹配指令
1、grep指令
①grep
②grep -n指令
③grep -i
④grep -v
⑤ grep结合管道
三、排序去重指令
1、sort指令
2、uniq指令
四、压缩解压指令
1、zip&&unzip指令
2、tar指令
①tar -czf&&tar -xzf 指令
②tar -czvf &&tar -xzvf
③tar -tf
④tar -xzvf 你的压缩包 -C 指定目录
五、tips
1 、bc 指令
2、 uname指令
①uname -a
②uname -r
3、 热键
①常用热键
②\续航符
③ shutdown
④lscpu&&lsmem
⑤df -h指令 && who指令
Linux下find指令在目录结构中搜索文件,并执行指定的操作。
Linux下find指令提供了相当多的查找条件,功能很强大,由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
即使系统中有网络文件系统,find命令在该文件系统中同样有效,只要你有相应的权限。
在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间。
功能:在文件树种查找文件,并作出相应的处理(可能访问磁盘)。
常用选项:
-name 按照文件名查找文件。
它会搜索到该目录下所有文件名为目标文件的文件路径。
find非常消耗资源,遍历一个大的文件系统。 可能访问磁盘(外设),效率非常低。
在系统中只搜索指令,打印指令在什么路径下。
在系统中搜索指令,查询在什么路径下。
这里需要提一嘴,之前博主提到ls 显示目录时普通文件为黑色,而目录为蓝色,为什么呢?这里我们通过which 看到ls指令里面有,这个指令是给文件染上颜色的指令。
alias指令功能是对指令进行重命名。
用法:alias 名字='指令';
比如我把top指令重名为lisi,输入lisi就能执行top命令。
我用which查询一下lisi,来验证他是否会出现top指令的路径。
我们看到这里和C++里面的引用取别名是非常相似的,这里lisi就是top的别名,但还是top。
再举个例子,比如说我把lisi命名为ls的别名,并让文件显示不同的颜色也是可以的:
whereis指令不同于find的精确查找,它是近似查找的方案,它在特定路径下查找指定的文件名对应的指令,或文档。
whereis 会帮我们去指定路径下做搜索,一般是目录路径,公共路径中去搜索,找名字当中包含你所要搜索的关键字的路径,包括指令,一些压缩包,一些文档,他都会找到。
总结一下:
whereis比which查找的范围更大,但是比find查找范围更小。
语法:grep [选项] 搜寻字符串文件
功能:在文件中搜索字符串,将找到的行打印出啦。
常用选项:
grep -i :忽略大小写的不同,所有大小写视为相同;
grep -n:顺便输出行号;
grep -v:反向选择,亦即显示出没有‘搜寻字符串’内容的那一行。
grep默认,会匹配文本中的关键字,匹配上的进行行显示。
比如我在文本test.txt里面查找有关键字‘888’的文本,就会找到打印出来:
对所有含有‘888’关键字的都会打印,对特定文本内容进行过滤筛选。
grep -n指令会在输出含关键字的文本,同时输出行号,这个行号不是对输出的内容进行排序的行号,而是它在文本中的行号。
grep -i 查找会忽略大小写。
比如我要查找有thank关键字的文本,默认是区分大小写的,但是grep -i查找就会忽略大小写。
grep -v 把匹配到的不要显示,没匹配到的显示,反向选择。
grep 可以和其他指令结合管道来进行某些匹配工作。
wc -l 是统计行数的指令。
sort 文件名 :对文本内容进行升序排序。
注意:sort排序不是计算文本数据大小排序,因为有数字也有字母不好排,它是以行为单位,按照文本行首个元素ASCII码值进行排序。
uniq 文件名 对文件文本进行去重。
对相邻的文本行凡是相等的全部去重,只保留一行;因为uniq是把相邻的去重,所以要结合sort先排序,那么相邻的都是相同的文本,然后去重。
zip压缩目录或文件,一般Linux默认没有安装,如果没有,就要安装。
用法:zip 你的压缩文件名 要压缩的文件。
unzip指令:只用unzip指令的话,unzip 你的压缩包(自定义名字),在当前目录下进行解包解压的功能。
unzip 你的压缩包 -d 你指定的目录下。
发现我们压缩是失败的。这是因为只用zip指令,默认对一个目录进行打包压缩的时候,默认只会对目录打包(目录的内容不打包)。所以我们要使用zip -r 递归打包。
正确的压缩方式:
unzip就是解压缩 ,解压的方式有两种。
①在当前目录下解压缩
这只是在当前目录下解压,但是我们在Windows下是可以解压到特定目录下的。unzip默认在当前目录下解压。
怎么解压到指定路径下?
相比于zip / unzip指令打包解压包的功能,tar新增了一个功能--预览,可以不打开它,直接看内容。而且它可以显示压缩或者解压的过程。
常用选项:
- c:建立一个以压缩文件的参数指令。
- x:解开一个压缩文件的参数指令。
- t:查看压缩包里的文件。
- z:是否同时具有gzip的属性?亦即是否需要用 gzip压缩?
- v:显示压缩或解压过程
- f :使用档名,注意,在f之后要立即接档名,不要再加参数
- C:解压到指定目录。
tar还有很多选项,我只是把常用的一些指令进行演示和说明。
打包压缩:
用法:tar -czf 你的文件名(以.tgz后缀) 要打包的文件
c:表示创建 z:表示压缩 f:紧跟要压缩的文件名
解包并解压:
用法:tar -xzf 你的文件名(以 .tgz后缀)
x:表示解包
多加了一个v,
v:显示压缩或解压的过程
tar -tf指令的作用是预览文件,不解压。
我们看到只是预览文件,而没有解压文件。
也可以是 tar -xzf 你的压缩包 -C 指定目录,只不过加了 -v会显示过程。
这个指令是 解压到指定目录。
-C :解包解压到指定路径下。
bc指令可以很方便的进行浮点运算。
bc指令就是计算器,不过在Windows下计算器已经够用了,这个指令用处不大。退出bc是
quit指令。不过bc可以和管道结合。
uname 【选项】 。
功能: uname 用来获取电脑和操作系统的相关信息,uname可显示Linux主机所用的操作系统的版本、硬件的名称等基本信息。
常用选项:
-a 或-all 选项 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称。
-r选项可以查到内核版本,没有-a齐全。
[Tab]按键 --- 具有[命令补全]和[档案补齐]的功能 ;这个热键是最常用的基本命令。
[Ctrl]+[c] 终止前台的异常程序---程序异常可以直接退出。
上下键 可以翻到历史命令。
[Ctrl]+[r]搜索历史命令,输入曾经历史命令的片段就可以显示历史命令。
[Ctrl]+[d]退出当前用户。
\ 续航符:\ 可以对命令或代码做续航。
常用选项:
-h:将系统的服务停掉后,立即关机。
-r:在将系统的服务停掉之后就重新启动。
-t sec :-t 后面加秒数 ,亦即[过几秒后关机]。
在Linux下,lscpu是查看cpu的状况。
lsmem在Linux下,是查看内存情况的。
df-h指令是查看磁盘结构的指令。
who查看当前这个账号谁在使用Linux。
对于Linux基本指令的介绍和演示到这里就告一段落了,博主主要把常用的指令进行演示和介绍。还有很多指令没有介绍,但是不大常用。下一篇博文就到了Linux权限的介绍了。