00:00
大家好,欢迎大家继续收看上回谷的云计算课程。我是沈超老师。这节课我们继续来学习晒尔的基本功能,带贝式的基本功能,那我们来看看贝时的快捷键,其实这个东西因为我们前期要用,所以其实大多数有用的快捷键我们讲过,比如说。CTRLC强度终止。CTRLL清屏。Ctrl u从当前光标,这个从当当前光标删除到命令行首啊,那么剪切和删除啥意思啊,讲过啊。那我们敲了一长串的命令,敲错了,然后CTRL加U直接就会清掉,当然它不是不光是删除,而且还是剪切,还可以粘回来,CTRLY就可以粘这个粘贴ctrl u或者CTRLK剪切的内容,把它再粘回来啊那。Ctrl u是删除光标前的内容,CTRLK删除光标后的内容啊,CTRLK用的不多,所以呢,我们还是就CTRLY,就是把它粘回来,Ctrl a快速移动到行首,CTRL1快速移动到行尾,光标来回移动啊。
01:12
哇塞,为什么会?唱一个。等一下。啊,Ctrl a是快速移动到CTRLCTRL1快速移动到行位啊,行了,一般也就是这几个键,剩余的这些东西,如果你们愿意可以自己试试,CTRLD呢是发送啊CTRLD。那如果在我们当前这种情况下是退出,如果是在这个邮件啊,这些内容当中就是发送啊,那如果在系统命令直接敲就会退出终端啊,退出终端CTRLC是放入后台,我再说不要拿它当成CTRLC来这个把终止程序,因为你的程序没终止放在后台了,行了,这些快捷键呢,还是以我们前面讲的为主,后面这些东西就虽然多了点,但是并不常用,就是我们前面讲的最常见好。
02:02
接下来输入输出重叠下。其实这个东西我们见过,就是单大于号和双大于号,那我们在这里详细讲一下。那首先我们先来看看我们被时的标准输入和标准输出。那么。我们前面一直在讲,Linux下一切接文件,所有内容都是文件,对吧?那我们的键盘显示器是文件吗?也是。键盘,我们认为它的设备文件名叫做ST。那么显示器标准,正确的标准就是正确输出的显示器,它的这个设备名叫std。错误输出的这个标准显示器呢,它叫做STG。但是这个文件名不容易被。系统如果敲的时候用这个很不方便,所以呢。12允许我们用这种文件描述符来描述键盘显示器和这个错误显示器,用零代表标准输,一代表标准输出,二代表标准错误输出。先指导一下这个,那我们来讲讲什么叫输出重定向,什么叫输出重定向很好理解。
03:16
命令的输出。本身是应该输出给标准输出设备的,也就是输出到键盘上。重庆项呢,就是。把它的输出方向。改变。让它不再输出到这个显示器上,而是让它输出在文件当中,这就叫输出重定向。各位,也就是说把命令的输出结果不再输出到屏幕上,而是输出到文件当中,改变了它的输出方向,所以叫做命令这个这个重镜像啊,但是其实最终的结果就是把命令的结果保存在了文件里。那么这个前面这两个我们见过。是吧?
04:00
单大于号是不是覆盖,把命令的结果输进去,覆盖掉,双大于号是最佳,我们试试。LS把它单大于号在ABC里,这个时候我们看ABC的内容就是LS的结果对吧?那我们PWD呢,也把它输出到ABC结当中,我说了所有的命令结果都可以保存下来。只要这个命令有输出,那这个也有,那我们看一下这里面是不是就写的是PW的结果,PWD的结果,我当前在root下对吧。那但是你会发现单大于号会覆盖之前的内容,那要不想覆盖怎么办?把单大于号变成双大于号,这个时候里面是不是就是两个PWD的结果的命令就叫做追加。那我们说啊,这个输出重新项可以用来作为记录这个这个系统的日志,你可以理解为把命令的结果执行结果先保存下来,哎,我们可能显示二程序了,我们可能执行程序的时候,人不一定在电脑跟前,系统自动执行了,那我把它的命令结果保存下来,等我上班了,我来看看有没有报错,这是不是就是数出虫子下最典型的一种,对吧?那。
05:11
换句话说,我的是不是应该把报错信息也写进来,那我们看看能不能把报错信息写进来,看着我故意把命令写错,然后想把报错信息。写入到配置文件里,我们会发现看报错信息直接输出到了屏幕上,命令没找到,那我们看看里边有吗没有。换句话说。如果采用这种方法,它只能保存正确输出。而错误输出没法保存,那要想保存错误输出怎么办?需要在这个大于号前面加个二,二是啥?我们说过了标准错误输出吗?对吧,或者你就可以理解为告诉系统,我要记录系统犯二的信息,犯二他才会记录下来,OK,那也就说要想记录报错信息,我要干嘛。
06:02
在这个大于号前面加个二,这个时候你看命令的错误是没有输出到屏幕上,看一下ABC,哎,错误信息记录下来了。那也就是说这是记录正确信息的,这记录错误信息的,但是。这里有一个明显的问题。你能看得出来吗?你想想。是什么?各位,问题很明显是吗?正确输出和错误输出两个格式不一样。换句话说,我必须人要事先知道这条命令会报错,我才会用错误输出来保存。这不法不合理啊,我要知道这条命令会报错,我干嘛把这个命令写错呀?我直接把它写对不就完了?也就是说,我能不能让正确输出和错误输出用同一个格式来保存,而不是用两个不同的格式,这个肯定不合理对吧?正确格式错误格式不是同样的格式,那肯定不合理,对吧?所以啊,各位。
07:06
我们真正在系统中使用的是这两个。这两个的作用都是一样的。哎,如果是这个,它是不论正确输出命令,不论是正确还是错误,都会保存下来。但是呢,它是覆盖的,那所以我们用的是这个,这就是追加的,它的作用就是把命令的正确输出。保存在文件里,再把错误输出保存在正确输出里,那是不是正确输出,错误输出都写在文件里。你不用理他,你就可以,就你就死记硬命,就记得这样写,只要这样写,不论这条命令是正确的还是报错的,都可以写进来。那我们试试啊,来各位,我们比如说LS,把它写入ABC当成二大于。大于大于and。一。哎,不要写错啊,按大于是AND1啊,那这样的话看这条命令是正确的对吧,看一下ABC正确内容是不是写进来了。
08:09
LS正确内容写进来了,同样的格式,但是我把命令写错了,那看一下错误的信息是不是也写进来了?没错吧,所以我说啊,这样的格式也是就是把正确的信息命令还是错误命令都会保存下来,这个才是常理的合用的。OK,当然也可以这样写,这样写也行,OK,那两种格式,其实超哥更喜欢上一种,因为这种格式我们见的少,但是明显的看起来是下面这种格式更简单,这个也行啊,就是看我们再来换个命令吧,那我们那个。呃,换个面的输出就PWD吧,那么把它到and的双大于号ABC当中,这样的话看PWD正确就行了,也会把它写进去看abcd有PWDD的结果。
09:02
那如果PWT错误执行了,看着。就命令错误就行了,它也会写进去,看下面是不是也有PWD的错误的结果,没错吧,所以这两种格式都是肯定。看你个人喜好。OK,愿意背哪个都行,但是也就说。我们手工输出可能这样保存可以,但是如果真要写脚本,就要用这两种格式了,因为你不知道这个命令会不会报错,对吧?用哪一个都行好,这里我强调一件事,什么事你看啊。我写正确输出的时候有空格吗?你看我前面往前翻,我写正确保存的时候有空格吧。有吧,而我写错误保存的时候你看清楚有空格吗?大于号左右两侧有空格吗?没有吧,原因啊,这是故意的,小心,如果加大于号,如果加错误输出,这个错误输出和二和这个大于号之间如果有空格就会报错。
10:02
那后面加空格其实问题不大,不会报错,但是不好记啊,你就干脆就记了,只要是错误输出就不能加这个空格,你记了加了空格怎么办?来,我们就这个报错,如果这加个空格你会发现来,反正他说错误的语法不认识这个按符是啥意思,反正就是报错了,没有正确执行。OK,所以你记得啊,错误输出这是不能加空格的,一定要小心。加二的话,这个地方OK,那这个要小心啊,这个格式问题非常的别扭,好,这是这个输出重新项啊,还可以有这种方法,这种方法是。把正确结构保存在文件一里。把错误结果保存在文件里,相当于记录正确日志和错误日志,诶这个倒还是有点用啊,这个是不是可能比把正确的错误的都写在一个文件里更清晰一点,那我们可以试试啊,比如说LS,如果命令正确了,把它写在OK这个文件里,否则把它写入。
11:02
把它写入到这个那个error这个文件里,哎,注意啊,写二就不能加空格,小心啊看正确的写在文件一里,错误的写在文件二,就这么简单,哎,可以吧,那我们看这条命令现在是正确的,对吧?那我们会发现OK,文件建立了。建立了吧,我们看一下OK里边的内容是不是LS正确执行了,那让这个命令报错,让这个命令报错,那这个时候我们看一下不光OK建立了,IO是不是也建立了。啊哎,之前的瑞也建立了,那我们这个时候看iro里面是错误信息,那看OK里面呢,是没有错误信息了,只有正确信息看到了。看到了,哎,这就是分开保存。如果命令正确执行,保存在OK里,如果这个错误执行保存在另外一个文件,哎,可以分别保存正确日志,错误日志,这这个到底怎么用都行。
12:01
你是把它写在一个文件里呢。还是把它分开保存呢,看你的习惯都可以。其次,除了有输出重进项,我们还会有输入重进项,各位输入重进项就是小于号。啊,什么意思?本来命令的输入结果是应该由标准输入,也就是由键盘数来输进来的。是不是给别人做书?输入重新项就是改变输入方向,不再用键盘作为输入,而拿文件作为命令的输入。哎,那这个东西输入重新像见的更少,见的更少,我们只在前面什么,你还记得吗?打补丁。派的时候是不是见过?还有那个提取RP包的文件的时候,这个时候是不是也见过这个cpio命令,是不是该用这个东西才能往里导入,没错吧,所以啊,各位用的不多,但是偶尔有,所以你要理解它是什么,这里举个例子啊,WC命令其实不是太准确啊,WC统计命令我们讲过了。
13:04
WC后面加文件名会统计。WC加文件名,会统计这个文件有多少行,多少个单词,多少个字符。那如果只想统计这个字符数,这个字符数加C,如果是只想统计行数加L,我们讲过,比如说我只想看有多少行。杠L11号OK那。这个命令啊,不是太准确啊,为啥我们可以直接WC后面加参数就可以执行,但是呢,我们也可以通过小于号来执行,但是这样我问你有什么意义吗。这是同样的,所以我说这个命令不准确,结果是一样的,但是它可以识别,通过文件作为它的输入,OK,这是小于号的作用,反而我就说。这个小于号输入重新项只在特殊情况,就是我们前面的补丁和这个CPI提取的时候,提取这个这个关键字的时这个有用,否则其他特殊正常情况下都不都不会用到这个输入图像。
14:07
那这是单小于号,那双小于号呢,用的就更少了,它的作用是看后面接一个这个测试符,比如说ul,然后你就会在这里面干嘛,随便说,说完之后呢,随便说,然后直到再碰到ul看。这相当于是一个分界符,再碰到这个分界符,把中间的内容作为这个命令的输入给输进来,它就会统计中间这点内容有三行七个单词,42个字符。啊,这就是双小于号的作用,各位双小于号这个东西我们直到今天也没有发现有什么真正的实际应用,这个反应就大家了解就行,单小一号还偶尔见到,就是古丁啊这些里面还见到过,双小一号就几乎没见过,所以你就知道有这个事儿就行,那输入输入重庆项当中,输入重庆项大家了解就好。
15:00
但是输出重击项可是非常常见的。我们在之前只见了保存正确输出对吧,现在你要记得单保存正确输出或者单保存错误输出是有问题的,因为我不知道前面这个命令会不会报错,所以我们要求你记得是这两个。这三个前两个是把正确输出、错误输出都保存在一个文件里,后面这个是把正确输出保存在文件一,错误输出保存在文件二里,那么这三种格式都可以,但是三个格式哪一个也不简单,看起来格式都挺别扭,这是需要你单独背诵。OK,那输入重新下是我们这节课的重点,这个东西在我们后期实验的时候是经常要需要,所以你要能看懂,要会写好,那这节课的内容就是这样,我们讲了一下这个快捷键,讲了一下输出新项重点简单了解一下输入重新项就可以了,好了,这节课就是这样,我们下节课再见。
我来说两句