00:00
大家好,欢迎大家继续收看上回谷的云计算课程,我是审查老师,这节课我们继续来学习12基础。那这节课我们来讲一个被试的基本功能,那12其实它自带的功能是是非常多,那其中很多功能我们是讲过的,因为这个功能比如说像管道服务这样的东西。它是必备的,我们前面上课的时候,很多实验都需要用到它,所以我们提前讲了。那在这里呢,我们整理一下,告诉你这些功能都是事的功能,那如果是讲过的功能,比如说管道符,我们很快的一说就行了,不再详细讲了。那我们先来看第一个功能,叫做历史命令,这个没见过,其实我们已经或多或少见过是吧。在系统当中,我可以通过上箭头调用出来我之前敲过的命令。看见了吧,那也可以通过什么history命令哎。呃,我我把这个单词读作读读作history啊,然后有学员告诉我说老师你读错了,应该读history,我说这玩意儿我们还能读错,历史命令这种单词能读错,专门查了一下,它的美式发音是history,英式是history,那我们是这个一般啊,咱们学的是美式口语,所以啊,这个history没问题。
01:17
那么输入历史这条单词回撤,它就会查询到系统当中已经存在的历史命令,这是我敲过的这边。各位,为什么只有50多条啊,原因前面咱们是不是讲了用户和分区啊,那这个两个东西讲完之后,系统会变得极其混乱,这里边有无数的用户,这个会建一堆的分区,对吧?所以呢,我就恢复快照,所以这是个新系统,所以看起来只有50条命令,那这是通过history命令来查询。其次。其实啊,我们的history命令,它其实是把你的历史命令记录在了加目录下的,这样被下的history这个文件当中了,那也就是说。
02:00
这个历史命令是永久生效的,重启他也不会消失,因为历史命令最终是写入这里的。那我们打开这个文件,我们可以看一下,哎,系统下其实是有很多这种隐藏文件的,对吧,加不录下,那我们打开它看一下。我们打开看一下,你会发现这个文件里的内容明显的少。明显的比我们最少,它肯定没有50行,哎,原因他这里边只有这么几行命令,原因各位。原因是我们现在看到了这些历史命令,是我这次登录之后新输入的命令,他还没来得及写在什么。这限制令还没有来得及写在这个文件中,那这个文件中写入的是我上次就是之前登录的时候写入的,而我这次输入的命令呢,是需要我退出登录。我重新登一下退出的时候,然后它才会把它写入配置文件的,OK,那各位换句话说啊,我再说一遍,系统是不允许直接把这个远程东西直接关掉了,那你想你如果把这里直接插掉,那这个需要退出才能生效的这些这些是这些东西是不是就没法正确生效了。
03:16
对吧,所以啊,我再说一遍,退出,记得要执行命令lockout啊,要执行命令lockout。哎,但是我不想去出。但是我还是想,我就想把这个就现有的这个历史命令写入在这个配置文件里,让它永久生效,我只需要加一个杠W选项就行了,它的作用就是强制把它先写进去啊,那我们试一下。杠W,这个时候我们V看一下。好,打开我们就可以看到,这里面的内容就很多了,也有50多行了。对吧,啊,那这样的话就可以把这个我们缓存中,就是这个在内存缓存中进入的这些东西写入到这个,写入到这个配置文件里,这样的话就会永久生效,这是杠W的作用,当然如果你不手工W往里写,你只要干嘛,用户注销正确注销,然后再登录,它也会泄露,OK,好。
04:18
这是历史命令,那它会记录多少条呢?默认是1000条,我怎么知道各位,这在这个环境变量配置文件里记录了你的历史命令条数,各位。这个环境内外配置文件我们之前见过吗?讲过一次了,里边放的是什么?忘了放的是u mask默认权限,还记得吗?那这个文件比较大,不光有这个,还有历史命令条数,那我看一下。ETC下的BTC下的profile OK,那这个时候我们可以看到啊,我们之前进来看它是为了讲这个东西。讲这个肉mask。
05:00
对吧,那这个东西知道之后呢,我们现在在这里找这里历史命令条数,哎默认是1000条,那如果你觉得1000条不够,我可以多保存点吧,比如说保存1万条,哎能不能多保存是需要看什么。这个历史命令是放入在内存中的,还是放入在硬盘上的?各位,如果放置在内存中,你就不能把它放的太大,原因放的太大,占用的内存数量就会比较多,会降低系统性能。但如果是放入到硬盘里,那就无所谓了,因为我们现在的硬盘动辄几百个G,上几个T,放这点历史频的纯文本也就几十兆而已,可以忽略不计。所以放的多一点,存的多一点干嘛,出现问题的时候,或者说我遗忘了我之前的操作,我是不是能查的东西就多一点,所以那我们刚刚讲过了。这个命令是放在内存还是放在硬盘的,那不是放在内存里,是放在硬盘上的,对吧?所以这个命令放大一点没问题,我们一般都建议你改大一点,所以啊,呃,改成1万条也行,就放进来,这样的话就能记进入更多的我们的操作明白了啊好了,这是历史命运条数啊,放在放入在啊小青这俩不是一个文件啊,这是定义历史命令保存条数的。
06:20
上面这个是实际上保存的历史,历史命令啊,还有。保存在加目录之下就说明什么,这个文件只保存当前用户敲的命令啊,这个也好理解,Root的命令保存在root的文件里,U了保存在U1的文件里,OK,好,好了。其次,还可以使用一个叫history-C的命令,这条命令是清空历史命令,它会把你当前内存中的历史命令和配置文件里的历史命令两个都清掉,两个都直接清空,相当于把你的所有的命令就清除了。那这个事儿啊,各位。我们不太建议使用原因,历史命令是一个重要的帮助手段,用来干嘛判断你之前干什么了,尤其是我们学员在学习的时候,我们经常有学员问老师我为什么我敲出来跟你不一样,我有报错,这个时候我要看你到底哪敲错。
07:15
哎,比如说我们前面讲的LVM身躯,它的命令是十几条啊,从头到上头,从头到尾一一系列的实验,你中间出错了一个实验,它都会导致结果不对。那这个时候我要能查历史么?六,我才能知道你干了什么,而如果你清了呢?好了,那就完了,谁也不知道你干嘛,那只得了规模快照,从头来了,就只能这样了。所以历史命令是有一定的帮助效果的,所以并不建议清空历史命令。只在一些极特殊的情况下,比如说。给MYSQL设置密码。给MYSQL设置完密码之后,我们建议清空历史命令,原因MYSQL设置密码的命令,它是明文设置的密码,比如说我设123,这个123就会记录在历史命令里,铭文密码记录下来肯定不合理,这个时候把历史命令清空一下,这样以后这个这个痕迹就会消失,那只在这极其有限的这种情况下,我们建议清空律师,否则都不建议你就呃,为什么还要改那么大呢?不光不建议,还要把它改大点,为了是多存储一点明白。
08:21
所以呢,知道这个事儿就行,那我亲一下吧。算了,先别清了,我先调用一下,因为清完没了我就没得调用了,那我先讲一下调用方法,再最后再来清,那怎么调用了,首先可以用上下箭头调用我之前敲过的命令,哎,如果你这个命令就刚敲完,上下箭头往上箭头往上一敲就行了。也可以用感叹号加数字的方式来调用第N条这个历史命令啥意思啊,看。我敲历史命令,我每条历史命令前面都会有一个这个数字,那这个时候我想,比如说我想调用这条。LS,那我就可以杠40对吧?当然我说心里话,像LS这么简单的命令,你还不如敲一下更方便,但是比如说那我说有些命令很长,比如说这个我手工敲就不方便了,那我怎么办?杠39,我一个一个往前翻也不方便,为啥它隔的比较长了,翻起来不不容易出现,那这个时候你看他就会执行这条命令,同时把结果告诉你看见吗?
09:23
没错吧,所以各位这是重复执行这个进取条命令的这个方法,也可以通过双感叹号重复上一条命令,也就是说我上一条命令执行的是它,我如果用,我如果用双感叹号,它就会把这个命令再执行一遍。啊,当然这样的话,你还不如就摁上箭头,然后再执行,还直观一点对吧?啊也可以。也可以用感叹号加字符串重复最后一条以字符串开头,里面啥意思?我这里有很多VM开头的命令。对吧,那我这个时候我感叹号VM,我以我重复以VM开头的命令,那重复了是最后一条。
10:08
前面的已经重复不了了,重复的是最后一个文件,就是应该是这个文件,那我试试看,它打开的就是profile文件,没问题,OK,好,这是重复以字符串最后一条以字符串开头的命令,这个反正你能想起来你就用,想不起来的话,这个就也就也就用不了了。这个是重复上一条命令的最后一个参数,那这里的参数呢,就是我们这条命令的参数是这个文件名,那这个就执行不了,它会报错,但是咱写一些你看啊,他会把这个参数给调用出来。我上条命令是这个,那这条命令是参数,这条这个符号会调用它的参数,调用这个,但是这是个文件名,是没运行的,是没法运行的,对吧,会报错。所以啊,这个调用参数在执行一些写特殊的一些事儿程序的时候,有可能我需要把参数给隔离出来,那如果我们自己通过这个文本的方式来操作的话,有可能还需要切割,而这个就可以直接把它调用出来,更方便一点那。
11:15
它有这样的功能。各位十尔编程,或者说我们所有编程都是这样,我把功能告诉你用不用在里面怎么用,是建立在这个你对这东西记忆,或者说你对他比较熟悉的情况下,你才能在写程序的时候把它想起来,对吧?那这个就是它支持的功能。好。这是历史命令的调用,那调用完了,我们想要亲一下,他就会把所有历史命令清空,现在看历史命令是有了五十六十多条了,那我们history-C一下,哎,再查历史命令没了,是一条,OK,那再说一遍啊,没有必要的情况下不要清空历史命令,除非特殊情况啊,好。
12:00
这是被是基本功能当中的第一个历史命令,还是比较简单的,第二个命令与补全,命令与文件的补全,这个我们是讲过了,对吧?我们讲过了就是命令按T键会令补出所有以U开头的命令,然后按U补全,不光可以补全命令,是不是还可以补全文件名ET,打ET没有ET开头的ETC就出来了,对吧?这是讲过了,所以只是告诉你这个东西是上的功能,行了,不用多讲。别名我们也讲过了,对吧,俄俄是不是查询别名。我系统重启了,所以我干嘛,我需要干嘛。把这个别名干嘛,别名是不是永久生效,写在了这个文件里,加目录下来点BRC对吧,那永久生效。是写入了点B叉写,哎,小倩这个文档上有点小文题,我再说一遍,呃,这是小写的,这是小写的,这是应该是word给我们做的自动补全,我待会会把它改回来啊,好点BSRRC永久生效写在这里,那我们比如说我们常用的我恢复快照嘛,之前定的没有了,所以V等于。
13:09
VM对吧,然后呃,S加等于。这个我们都是讲过了对吧,Service下network restar啊好。那如何让它生效呢?写在这里,是不是要重新登录才能生效?我说了不用啊,执行SS命令也行,SS命令它的作用就是把环境变量配置文件不需要重新登录,让它直接生效S回撤,这个时候看V打的是V对吧,但是打开看有颜色了对吧?VM是不是生效了。对不对,当然S其实就是这啊,你看这个命令看起来比较二啊。前面这个点是S命令命令的意思,后面这个点是隐藏文件的意思,不要搞混,OK,这个就是也是source命令,当然如果是打点杠,是当前目录下的意思点有这样三个含义。
14:06
单独的点是SS命令,文件名前面加点是隐藏文件,目录前面加点是当前目录啊,小心这这个事儿,这个命令就是让它直接生效,不用重启,不用重启啊好,这是别名的这个基本功能,但是我们来看一下别名的优先级。各位。我们执行命令的时候,如果有同名的命令,它的优先级是什么样的?第一顺位,你如果用绝对路径来执行命令,那它的优先级最高什么意思?你看啊。我虽然给V定义了个边边,让它等于VM,但是我看一下YV。V是在并下的VI当中,那我现在如果我如果直接这样执行V。Profile看它有没有颜色,如果这样执行别边一定会生效,所以我执行的是VM,所以你看有颜色,但是如果我要是这样执行,我打的绝对路径。
15:04
这量执行,那我现在这执行的就是真正的VI,因为vim是在U并下的,Vim没在一个里面,我现在明确的用绝定路径告诉系统,我就要执行V,而不是VM,那这个时候你会发现,哎,打开没有意思。看到了,所以我们说。第一顺位,如果你用绝对路径或者相对路径,那他一定会先执行这个命令,你就算有边边也不会干扰。第二顺位呢?如果你没有写绝对路径,只打的是命令,那这个命令如果有别名,那么别名的优先级更高,会执行别名,那第二顺位是别名。这三顺位是十尔的内置命令,哎,我们说有部分的十尔命令对吧,第四顺位才是按照派环境变量所查找到的外部命令,各位。这个我们后面再讲。就在12当中,我们就会讲,稍微等会儿我们下几节课再讲,暂时你先可以不理他,你就知道这四顺位是标准命令,它放在最后,所以我们一直在说别名的优先级是高于系统命令了,对吧?所以呢,除非你真的想让这个别名覆盖系统命令,否则你起的别名就应该像我这样了,不应该是系统现有命令,否则别名是不是就会覆盖命令,你的命令就执行不了了。因为。
16:26
别名的优先级要更高一点,大家注意这个事儿好,那别名这个东西我们也是讲过了,所以我们快速的一过就行,告诉你这其实也是事当中的基本功能,那我们今天讲了三个基本功能,一个是别名,一个是命令和文件补全用推部键,还有一个是力神经病啊,那这个都非常简单,好吧,那我们这节课的内容就到这儿,下节课再见。
我来说两句