【linux】基本指令

我们开始讲linux啦,一些linux的历史我就不讲啦,包括环境的安装,网上都有教程,这里我选择的是华为云的HECS,镜像选择的是centos7。接下来我们就来看看linux有哪些基本指令。

一.ls指令,pwd指令,cd指令

ls指令可以查看当前目录下的文件及文件夹:

pwd指令可以看自己当前处于哪个目录下:

cd是跳转指令,可以转到想去的目录下面:

而.对应的是当前目录,而..对应的的上级目录,所以我们也可以这样使用:

补充一下ll指令,相当于ls -l是可以查看文件属性的。

可以看到这两者并没有什么差别。我们可以理解为ll是ls -l的重命名。

二.rm指令

rm指令是用来删除的指令,它可以删除目录也可以删除文件:

可以看到,在此路径下原本有三个txt文件,我们用rm+文件名可以删除指定文件,但是在删除的时候我们需要人机交互,会询问你是否确认删除此文件,我们输入y就是yes,n就是no。但是如果我们不想交互的话,我们可以在输入rm -f+文件名,这样就可以取消交互了。

rm -r是递归删除,因为文件时多叉树实现的,我们可以用rm -r来递归删除:

我们可以看到,在递归实现中,我们可以把整个文件里的内容给删除,而-rf的使用只是为了不出现交互。当然,上图中有一个tree,这个是可以通过树状图来查看文件的分布情况,这个需要通过下载才能使用,指令为yum install -y tree,这里就不过多说明,下了就可以使用了。

三.man指令

man指令是可以用来查看一些函数用法的指令,就拿我们熟悉的printf来说,如果我们不知道如何使用,那我们就可以通过man指令来看printf如何使用:

当然,如果全部看完有点多,我们可以只看第三条,可以这样输入指令:

这样我们也可以看函数内容。

四.mv指令,echo指令

mv指令就是move指令,其中写的方法是mv src dst,其中src是一定要存在的,因为要将src移动到dst去。dst是个目录,如果此目录下面没有指定的文件或者文件夹,那么会对src进行剪切,如果普通的文件名不存在,就是重命名。我们来看:

可以看到,我们把test1移动到了test2里面,然后将test2移动到了上级目录下。这些是对目录的操作,那如果是文件操作呢,我们来看:

可以看到,如果其他文件夹里没有相同的文件,那么就是剪切,如果有,就是改写。

接下来我们来看echo指令。

我们可以看到,我们成功的把hello输入进了test.txt文件中,其实,我们没有创建test.txt的时候也可以执行这个指令,系统会为我们创建test.txt。至于cat指令,我们稍后讲。

关于我们的echo,我们还要补充几点,其实>符号,是输出重定向,因为我们单独用echo的时候,只可以直接把想输出的直接输出到屏幕上的,我们看:

可以看到,我们是可以直接输出的,但是>符号,导致这个直接写进了文件,所以我们叫它输出重定向。

我们继续使用的话,可以发现>会将test.txt的内容进行重写。那我们如何追加呢,那我们要引进这个符号:>>追加重定向。通过这个符号我们就可以对文件内容进行追加了。

五.cat指令及拓展

cat指令默认读取的时候,会从键盘文件中读取,但是后面如果跟文件的话,就可以读取文件中的内容。上面已经演示过,我们来看几条拓展指令:

我们可以看到,-n的作用是可以查看行数,-s的作用不输入连续多行空行,-b的作用是不对空行带编号,当然我们也可以这三个指令用在一起。

可以看到这里的效果也是非常的不错。

我们还要讲一讲head和tail指令,head指令是获取文件的前...行,tail指令是获取文件的后...行,我们看:

可以看到,我们通过tail和head指令获取了相应行数的数据。那我们是否可以一次性获取到中间几行的数据呢?答案是可以的。我们可以通过管道文件来获取。

可以看到我们获取了2-3行的文件,第一行指令是什么意思呢?意思是先获取test.txt文件的前三行,再从这前三行取倒数两行,这样我们就可以获取整个文件的2-3行数据。

六.时间相关的指令

1.date显示

我们可以通过一系列的操作来查看时间,其中%Y是年,%m是月,%d是日,%H是时,%M是分,%S是秒。我们来看:

这个就是当前时间,但是我们看起来不是很方便,所以我们可以把它写成我们习惯的形式,可以用分隔符来操作。

这样我们就可以把时间操作成我们熟悉的样子。

2.时间戳

时间戳是指格林威治时间自1970年1月1日(00:00:00 GMT)至当前时间的总秒数。它也被称为Unix时间戳(Unix Timestamp)。通俗的讲,时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。

我们可以通过date +%s来查看当前时间戳。

我们也可以通过时间戳来看对应的时间,用date -d @时间戳实现。

同样换成我们熟悉的方式:

可以看到,通过这种方式就可以准确的记录时间。

3.cal指令

cal指令主要用途就是获取日历,这里简单介绍一下:

我们可以直接输入cal可获取当前日期,也可以输入年份,月份等来获取日历。

七.find指令

顾名思义,find指令就是查找指令。我们可以通过find -name指令来按照文件查找。

这样我们就可以获取文件的路径信息。

补充两个指令,which指令和whereis指令:which主要是查指令是在哪里安装的,可以找到对应的路径。whereis主要是查找包含关键字的文档。这里就不多做演示。

八.grep指令

grep指令是行过滤工具,其主要有以下几个功能:

1.grep ... 文件   -----   把文件中包含...的给显示出来

2. -i   -----   可忽略大小写

3.-v   -----   把匹配的去掉,不匹配的留下

我们来看以下指令:

可以看到我们实现了上列指令。

九.zip/unzip指令

首先我们在windows操作系统下也见过一些压缩文件,其文件后缀是.vip,但是在linus操作系统上呢,我们用的是.zip后缀。zip就是压缩,unzip是解压,我们可以用zip  ... .zip +文件,来压缩文件,并且可以通过unzip + 文件 + -d ...解压文件到指定路径。

可以看到我们将test目录下的文件压缩成了test.zip,我们可以把它解压到指定路径,我们可以通过unzip +文件+ -d 来解压到指定路径。

我们可以看到我们已经解压成功了,但是却只有test目录,却没有里面的内容,原因是我们需要用递归压缩才行,所以我们应该这样压缩。

我们再将其进行解压:

可以看到我们已经解压成功了,并且原目录下的文件都在,并且都已经解压成功,我们来看看文件内容:

可以看到文件内容并没有变。我们的解压很成功。

十.tar指令

tar指令可以进行打包/解包,不用打开它,可以直接看内容。

tar.gz=-tgz,我们可以尝试使用这些指令。

tar -czf + 文件名  ------  是创建压缩,并且使用档名。

tar -xzf + 文件名  ------  是解压,使用档名。

这里我们将打包压缩过的test.tgz解压到了../目录下,得到了test1.txt。

关于指令我们就先介绍这么多,这些指令大家一定要多练习,熟能生巧,光靠背是没有用的,无他,唯手熟尔。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值