00:00
大家好,欢迎大家继续收看上硅谷的云计算课程,我是沈超老师。这节课呢,我们来说一个瑞德的键盘接收什么意思啊。咱们前面是不是讲过了这个位置参数变量对吧。那我们说位置参数变量是用来干嘛的?我们说它的作用是不是用来向我的这个脚本当中传递值的,对吧?比如说我们前面写的这样一个计算器,它的作用就是把第一个参数赋给变量A,把第二个参数赋给变量B,然后计算这两个参数的和,对吧?但是这个脚本有一个这个脚本能执行,但是这个脚本你看能执行2233,它会记录和,但是这个脚本有个巨大的问题就是。我的普通用户怎么会知道他要在这个脚本后面执行写入两个参数,而且还要写必须写数字他才能正确的运算呢?普通用户没有任何提示啊,不可能能写到这个,能写出正确的这样的一个格式,对吧,只有写脚本的作者才可以这样自己来写这样的东西,那这个不符合我们的日常使用习惯,那readid其实它的作用也类似,其实就是接收键盘的这个输入内容,然后让脚本来进行运算或者处理,但是瑞就合理多了。
01:24
Read的格式,它是这样的啊瑞。我们可以干嘛加选项,它有提示信息等待秒数啊,字数一般不限制啊,然后呢,隐藏的话,如果你设密码的时候可以做隐藏,然后把它赋予变量,啥意思来我们试试。刚刚我们写的这个脚本非常的,这个只适合作者来写,那我们再写一个,我们再写一个count,二来这样一个脚本来我们不再用什么。我们不再用这个这个这个DOLLAR1和DOLLAR2这种位置参数原量往里输,我们干嘛,我们用这个呃,这个这个read来进行输入啊,它的格式就要简单多了,Read使用起来就会方便了,那比如说我们这里看啊readid杠七等待30秒,我不能一直让它卡在这不动,对吧?杠屁提示提示什么呢。
02:19
其实我就说请输入一个数字,Please。A number1,请你输入数字,我把它赋予NUMBER1里。诶看清楚啊,后面这是变量,中间这只是提示你的输入,待会儿键盘会让你等着,等着让你输,等在这等30秒,你不论输任何东西,它都会放在NUMBER1把换放在你这个变量里,对吧。然后呢,我在同样瑞的杠七等待30秒,然后杠七,然后请你干嘛。Input a number2。请你输入数字二,把它放在数字二,然后呢,我们开始计算和sum等于Dollar双小括号,这个我们说了,做数值运算是不是得用这个格式对吧?Dollar number1加Dollar number。
03:16
Number把两个数加起来,然后呢,输出它的和它的和IO到三,哎,这样的小本是不是就比刚刚那个用未置参数变量同样的功能啊,是一模一样的功能,但是这个脚本是不是要比刚刚合理多了,为啥它会歧视用户来输入,而且会告诉你输什么东西对吧?那我们来执行一下他陈志木的。先处你执行权限count,然后呢,好,我们执行一下COUNT2,他说输入数字122,输入数字数字244,然后答应结果六六,结果是66加起来。看明白了吗?来,我们来看一下,我们来看看这两个脚本啊。
04:00
我这这两个脚本的功能是一样的,但是第一个脚本就只适合作者来用,为啥只有作者才知道在这个脚本后面要加俩数是不是才能运行?而第二个脚本用瑞德来进行接收的话,它就明显合理了。干嘛当你。当你在运行的时候,看它会有提示,请你输入多少,然后呢,当你输完数字,这个数就附在NUMBER1里。然后第二个提示接着来,让你接着输数字,第二个数字就附在NUMBER2里,然后你就可以进行处理了,我这里只是做了个简单的加法运算,那如果要是实际情况下,我是不是可以处理很多复杂的东西了,你想怎么处理怎么处理都可以,对不对?那这其实它的作用其实和这个位置参数变量是一样的,就是用来接收用户的输入的。不过瑞的要明显的比刀一要这个合理,因为它有提示,但是刀一刀二位置参数变量明显的简单。
05:02
所以我们说啊,各位就写完脚本看起来简单,脚本更简洁,那我们就说各位,位置参数变量更适合作者自己来用,而瑞德更适合让这个用户来进行输入,OK,那这个时候各位,这就是这个read的基本用法啊,这个例子也一样,这个例子就一样,你看亲戚输入名字,你输入的名字保存在变量这个命命这个名字当中。然后把名字输出一下,再输入年龄,年龄,再把年龄输出一下,再输入性别,再把性别输出一下,其实就是三个输出,跟刚刚那个基本一样,OK,只不过啊,这里多说一句啊啥。就是我可以通过杠N的数字来限制你能输入几个字符,比如说我这里让你输入性别,我只允许你输mail和form mail就男人和女人。只允许你输这一个符号,所以如果加个杠N,那它就是不再是刚刚了,看刚刚这个咱们没有加杠N的时候,看他执行的时候是这样的。
06:03
执行你看不论你输几个数,你不回车,它就不不不运行,但是然后你这里输几个数,它就会这个等你回车运行,但如果加了个它就会干嘛你输,你比如说我只允许你输一个数,输一个数它就自己回车了。还允许你加什么杠SS的作用会隐藏你的输入,啥意思啊,看我这里的输入是不是都会显示在屏幕上,加了杠S这里就看不到了,就跟我们passwor设密码那个就类似了,那我们试试啊,我来看看二,那我们就NUMBER1,我这里第一个杠N,我只允许你。杠N,我只允许你输一个数NUMBER1,然后呢,第二个数杠杠S,把它隐藏起来。哎,看明白了,然后呢,那我们来试一下看呢。直接执行它第一个数我想输幺幺,输了一个幺,看直接就执行了,哎,没有换行啊,所以第二个数就直接就这个就直第二行就直接打出来了,那第二个数呢,看我说123没有任何显示,但是。
07:10
这个结果是能出来的,对吧,好,这个别扭啊,我加个换行符啊。我加个换换行。我们在这个文档上我们看啊,在这里IQ-E加的这个反斜杠N就是换行啊,只有识别加了杠E才能识别这种隐藏符号,对吧?啊,那么试试啊,AQ-E反斜杠N让它换行,要不然他就挨着那个,那个书看起来很别扭,AQ-E。反斜杠N,反斜杠N好了,那我们这时候再试试,这就应该可以了。来第一个数我只能输一个数,比如说我输个二,它直接就跳转了,没有等我回车,第二个数呢,我说345它没有显示,但是回车结果是能够正常运算的,345加二是不是就是347,没错吧,所以啊,这就是我们这里说瑞德当中的。
08:06
杠S隐藏输入杠N的作用,这个在特定情况下有可能会用着好,那这个还是非常简单的一个东西,那这个而且非常常见,因为我们一旦需要用户输入瑞的明显的比这个位置参数变量是比较合理,对吧?好了,那各位瑞的这个功能也是非常常见的好。呃,这节课呢,内容就是这样,我们下节课再见。
我来说两句