Linux终端常用命令(三)

文章目录


前言

在Linux终端常用命令(二)中介绍了查看文件的操作命令。并且介绍了vim打开文件后的三种模式,touch命令,cat,ls等系统常用的命令,最终介绍了两种通配符。想要了解的小伙伴可以翻看我之前的文章。这次我们的环境同样是Kali,在接下来的代码环节,包含的不仅是代码,还有代码运行的情景。不要直接的去尝试复制代码,要看情景之后在敲入相应的代码。请各位学习的小伙伴多注意。


老规矩先创建实验的情景 

┌──(root㉿kali)-[/home/wang]
└─# mkdir test

┌──(root㉿kali)-[/home/wang]
└─# cd test

┌──(root㉿kali)-[/home/wang/test]
└─# touch 1.txt

┌──(root㉿kali)-[/home/wang/test]
└─# vim 1.txt

┌──(root㉿kali)-[/home/wang/test]
└─# cat 1.txt
123456

┌──(root㉿kali)-[/home/wang/test]
└─# touch 2.txt

┌──(root㉿kali)-[/home/wang/test]
└─# vim 2.txt

┌──(root㉿kali)-[/home/wang/test]
└─# cat 2.txt
654321

┌──(root㉿kali)-[/home/wang/test]
└─# 

┌──(root㉿kali)-[/home/wang/test]
└─# mkdir test1

┌──(root㉿kali)-[/home/wang/test]
└─# touch 3.txt

┌──(root㉿kali)-[/home/wang/test]
└─# vim 3.txt

┌──(root㉿kali)-[/home/wang/test]
└─# cat 3.txt
abcd123

┌──(root㉿kali)-[/home/wang/test]
└─# 

这上面的命令在我之前的文章中都讲过,不太清楚的小伙伴们可以去看我之前的文章。总的来说就是建了一个test的文件夹,文件夹下有两个文件分别为1.txt和2.txt。再分别往1.txt中输入123456这段文本,往2.txt中输入654321这段文本 。紧接着test目录下创建了test1文件夹。在创建了3.txt,在3.txt中输入abcd123这个文本。


一、du命令

du命令作用是检查文件或目录所占内存大小。其中它后面常接几种参数如下。

-a:显示每个文件或目录的磁盘空间大小,包括所有子目录和文件。

-s:显示每个给定文件或目录的总大小(如果文件夹下有多个文件或子目录,则显示总        和)。

-h:以可读的方式显示磁盘空间大小(例如:1K、1M、1G等等),而不是简单的千字节      (KB)。

实例1

┌──(root㉿kali)-[/home/wang/test]
└─# du -a
4	./1.txt
4	./2.txt
12	.

┌──(root㉿kali)-[/home/wang/test]
└─# du -s
12	.

在这个实例中-a参数显示了所有文件包括隐藏的文件。-s显示单个,这里是因为默认设置才会后面出现12。这个测试结果其实也带给我们另外的思考。对于我们在1.txt和2.txt都输入123456这串数字,只不过两者123456这串数字是正数还是倒数。但最终结果显示它们的内存大小都是4。这里可以在往后细想一下。

实例2

┌──(root㉿kali)-[/home/wang/test]
└─# du -ah
4.0K	./1.txt
4.0K	./2.txt
12K	.

┌──(root㉿kali)-[/home/wang/test]
└─# du -sh
12K	.

在这个实例2中du命令后接了两个参数ah和sh。也就是说在之前的基础上可以显示文件内所存内容所占内存的大小。


二、find命令

find命令的用法也是后面接参数,后面常用到的参数如下。

-type:按照文件类型搜索,其中常用的参数有d(目录)、f(常规文件)、l(符号链接)等等。

-size:按照文件大小搜索,支持使用+和-表示大于或小于某个大小

-name:按照文件名搜索,支持使用通配符进行匹配。

-mtime:按照文件修改时间搜索,其中+n表示n天前,-n表示n天内,0表示今天。

-ctime:按照文件状态改变时间搜索,与-mtime相似。

-atime:按照文件访问时间搜索,与-mtime相似。

实例1

┌──(root㉿kali)-[/home/wang/test]
└─# find -type d
.
./test1

这个串代码的作用是查找当前目录下的目录文件。其中后面的d代表目录。

实例2

┌──(root㉿kali)-[/home/wang/test]
└─# find /home/wang/test -size 4k
/home/wang/test
/home/wang/test/test1

这串代码作用是在/home/wang/test下面以4k的内存大小来查找文件。注意这里我尝试写相对路径,但在Kali上面报错。所以我写了绝对路径。相对路径和绝对路径不清楚的小伙伴也可以去翻我之前的文章“Linux终端常用命令(一)”。

实例3

┌──(root㉿kali)-[/home/wang/test]
└─# find -name 1.*
./1.txt

┌──(root㉿kali)-[/home/wang/test]
└─# find -name 2.tx?
./2.txt

上面显示的是在/home/wang/test这个目录下面,以名字的方式查找1.*和2.tx?这种类型的文件。*和?在我之前的我文章也有提及,这里不过多叙述。要细看解释查看我之前的文章“Linux终端常用命令(二)”。

实例4

┌──(root㉿kali)-[/home/wang/test]
└─# find /home/wang/test -mtime -2
/home/wang/test
/home/wang/test/1.txt
/home/wang/test/test1
/home/wang/test/2.txt

┌──(root㉿kali)-[/home/wang/test]
└─# find /home/wang/test -atime -2
/home/wang/test
/home/wang/test/1.txt
/home/wang/test/test1
/home/wang/test/2.txt


这两串代码相同点是都在/home/wang/test目录下执行,时间选取的都是2天。不同点是第一串代码是按照文件修改时间搜索,而第二串代码是按照文件访问时间搜索。

三、grep命令

grep命令是查找含有特定内容的文件。具体后面常用的参数包括。

-i:忽略大小写。

-v:显示不匹配的行。

实例1

┌──(root㉿kali)-[/home/wang/test]
└─# grep -i "^a" 3.txt
abcd123

┌──(root㉿kali)-[/home/wang/test]
└─# grep -iv "^a" 3.txt

┌──(root㉿kali)-[/home/wang/test]
└─# 

┌──(root㉿kali)-[/home/wang/test]
└─# grep -i "3$" 3.txt
abcd123

这里grep命令后面接-i参数是忽略大小写,^a代表以字母a开头的文本,3$代表以数字3结尾的文本。而如果参数i和v同时使用就会出现如上图的现象。其中-v的含义是不匹配的行。


四、管道符

|就是Linux系统中的管道符,这里不细说,因为之后的文章还会用到。毕竟命令有时是连在一起使用的,它们之间不应该是孤立的。大致上管道符可以理解为将两个独立的部分进行分别运行,起连接的作用。


五、小叙

tail命令用来查看文件内的后几行。这里举一个代码如下,当然在1.txt中要有相应的内容。

tail  -5  1.txt

另外tail命令后面加一个参数-F就可以实现实时监控。代码如下。

tail -F

head命令用来查看文件内的前几行。这里举一个代码如下,当然在1.txt中要有相应的内容。

head  -5  1.txt

file命令是用来查看文件类型的。具体用法可以是file后面直接加文件的名字。当然要在相应的目录下进行。

which命令是用来查找命令并显示命令位置的。

改命令名的代码

alias w=”ls -l”

其中加下划线的w可以换成其他任何想替换原命令的按键。只要你自己能够记住还好用就行。


总结

本文主要介绍了du、find、grep这三个命令,管道符在之后的文章中相应代码会用到,就不细讲。最后小叙了tail,head,file,which这些常用的小命令。当然最后放了一个可以改变原命令名称的代码。仅供参考。一起学习进步,转瞬都有,加油。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

转瞬都有

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值