前言:
紧接上期【Linux】基本指令(上)的学习,今天我们继续学习基本指令操作,深入探讨指令的基本知识。
目录
(一)常用指令
more指令
less指令(重要)
head指令
tail指令
时间相关的指令
Cal指令
sort指令
find指令:(灰常重要) -name
which指令
whereis指令
alias指令
grep指令
top指令
zip/unzip指令
tar指令(重要):打包/解包,不打开它,直接看内容
bc指令
uname –r指令
热键[Tab],[ctrl]-c, [ctrl]-d
关机
(二)扩展命令
语法:more [选项][文件]
功能:more命令,功能类似 cat
在讲【more】指令之前,我们需要先在一个文件中放入很多的数据。这个指令当做了解,现阶段不要求大家掌握,具体如下所示:
cnt=0; while [ $cnt -le 1000 ]; do echo "hello $cnt"; let cnt++; done > myfile.c
然后当我们打印这个文件中的内容时,最终结果就是循环打印出1000条【hello】指令,具体如下:
但是当我们想要去具体看一行的代码时,这样来回的翻动会显得很不方便,于是我们有专门的指令可以进行观看,基于这种情况,就引出了【more】指令。
存在的缺点:
常用选项:
对于上述【more】存在的不足,【less】就很好的解决了相关情况。接下来,我们具体聊聊【less】指令。
语法: less [参数] 文件
功能: less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前 不会加载整个文件。
除此之外,还支持上下翻动的功能,只需按键盘中的这两个键
选项:
【head 】与 【tail 】就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,【head 】用来显示档案的 开头至标准输出中,而 【tail 】想当然尔就是看档案的结尾。
语法: head [参数]... [文件]...
功能: head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
我们直接上代码来进行直观的理解:
不仅如此,我们还可以指定行数进行打印,具体如下(这里的【n】可以省略不写):
选项:
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail - f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.
语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
老规矩,直接上代码:
跟【head】一样,这里也可以指定行数进行打印操作:
选项:
拓展知识——管道
讲完了【head】和【tail】的有关知识,这里我给大家拓展一个知识点,即-管道
“|”是管道命令操作符,简称管道符。利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。连续使用管道意味着第一个命令的输出会作为 第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。
在正式学习之前,我们先来研究下列代码代码什么意思:
cat myfile.c | wc -l
什么意思呢?我们直接运行,结果如下:
大概就可以如下图理解:
我们在通过例子来带大家进一步认知,当我们想要只显示【myfile.c】中500行到520行的内容时我们可以怎么做呢?这里我们给出两种方法:
紧接着我们在用【tail】打印最后20行即可:
到此,我们拓展的管道的知识便到此了。
date显示
date 指定格式显示时间: date +%Y:%m:%d date
用法:date [OPTION]... [+FORMAT]
当我们在Linux下如何获取时间呢?我们可以直接在命令行敲入【date】命令就可以了,具体如下:
上述看着是不是看着不好去认呀!我们可以对其进行格式化操作,让时间显示得一眼便可以看出的效果:
因此,我们可以这样去做;
什么是时间戳:
一个能表示一份数据在某个特定时间之前已经存在的、 完整的、 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间。简而言之,就是某一刻的时间
时间戳有什么用:
一般,在互联网公司都会在项目种使用时间戳,时间戳主要用于清理缓存,大多数用于版本更新
用法:
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的 午夜)开始所经过的秒数,不考虑闰秒。
具体如下述所示:
还可以像以下这样写:
cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳 历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。
基本介绍:
命令格式: cal [参数][月份][年份]
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份
当我们想要查看【2022】年的日历时,我们只需要输入:
cal 2022
当我们只输入【cal】时,显示的是当前的月份:
当我们想知道跟本月挨着的三个月是哪个月时,我们可以这样:
常用选项:
语法:sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件][-k field1[,field2]]
功能:【sort】将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。
怎么用呢?具体如下图所示:
默认的情况下是进行的升序排列,那么我们是否可以进行降序排序呢?当然是可以的啦,我们只需要加上【-r】即可,具体如下:
常用选项:
语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
具体使用如下图所示当我们想要去查找【my.txt】文件时,我们只需加上对应的指令即可:
不仅可以在当面路径下进行查找,还可以指定目录下去进行查找,具体如下:
常用选项:
跟【find】类似,这个指令也是查找类的指令。
语法:which [文件...]
功能:搜索对应指令的路径
用法如下:
参数:
语法:whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
功能:用于查找文件。该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。
用法如下:
参数:
以上三个就是在Linux下经常用到的查找指令。
在操作 Linux 的过程中,最令你感到不爽的是什么?答案可能就是命令太多,选项太多,记不住。命令可以通过本书学习,但选项太多可真的不好办了,基于上述情况【Linux 】系统中有一个叫作 【alias 】的命令,它可以给一些命令设置别名,利用它我们就可以不必记住太多复杂的选项,只需将这些选项设置成别名就好啦。
语法:alias [name[=value]]
这里需要注意的是:
了解了别名的基础知识之后,我们来看一个定义别名的例子:
alias myls='ls -a -l -n -i'
这个例子定义了一个 【ls -a -l -n -i】命令的别名,以后,当我们执行 【myls】命令时,其实真正执行的是 【ls -a -l -n -i】。是不是很简单呢!
语法: grep [选项] 搜寻字符串文件
功能: 在文件中搜索字符串,将找到的行打印出来
具体怎么用呢?我们结合下面的代码进行理解:
常见的还有带【-n】选项的,意思为额外输出对应的行号:
接下来,我们在介绍几个:
正式介绍之前,我们需要改动一下测试用例,因为之前是在【myfile.c】文件中写的,那么我们把它情况重新写入呢?这里介绍一个方法就是【>+文件名】,即为情况文件中的内容:
接下来我们重新向文件中写入数据,在进行操作,具体如下:
常用选项:
功能:top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
当我们想要退出时,及输入【q】即可。
语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
接下来还是以代码的方式带大家去感受这个指令。此时,当我们想压缩【test1】这个目录,我们直接输入代码,当运行然之后再去查看当前路径下时,就会多显示一个一个压缩好的,具体如下:
既然有压缩就有解压缩,那么我们该如何进行解压缩呢?我们只需执行【unzip +压缩文件】即可。(因为当前有个一样的文件,为了实验的正确性,我们先把压缩包移动到【tmp】下)
紧接着通过以下代码大家就可以直观的感受到解压的过程:
此时已经解压了,当我们想要查看当前目录下的文件时,我们发现竟然什么都没有。什么原因呢?这是因为上述方法,我们只是压缩了目录而已,并没有把目录下的内容进行压缩:
我们需要进行递归处理,把目录下的所有文件递归的进行压缩,只需加上【-r】即可,具体如下:
还有就是当我们想解压到指定目录下时,可以怎么做呢?大家通过代码进行感受:
上述两个命令只能对以【.zip】为后缀的压缩文件起效果,但是在我们日常生活中,遇到的肯定不止这一种压缩文件,还有.rar、.tgz、.7z等等,因此为了能够操作更多的压缩文件,我们还需要学习一个指令叫做【tar】
语法: tar [-cxtzjvf] 文件与目录
功能: 将目录或文件压缩成zip格式
我们具体也压缩一个文件为例进行说明(开始时目录下只有一个【test1】文件,当我们执行相关代码之后,在【ll】我们就可以发现此时已经多出了压缩的文件):
那么解压缩呢?还是通过代码进行观察:
解压到指定的目录呢?(跟zip差不多,只是这里后面加的是【-c】)
参数:
语法:bc(选项)(参数)
功能:bc 命令是任意精度计算器语言,通常在linux下当计算器用。它类似基本的计算器, 使用这个计算器可以做基本的数学运算。
bc指令还可以和我们上面说过的管道一起使用
语法:uname [选项]
功能: uname用来获取电脑和操作系统的相关信息。
补充说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。
这里简单介绍两个选项,具体如下:
还有一个就是【-r】指令:
常用选项:
语法:shutdown [选项] ** 常见选项:**
上述即为在我们学习初级需要大家记住的指令,后续还有很多指令我们边学边记就可。以下是一些拓展指令,大家可以认识认识:
以上便是关于【Linux】基本指令的全部知识,大家做笔记的同时多上手敲两遍这样会大大的加深我们的理解!!!
最后,如果文章对您有帮助的话记得点赞三连哟!!!