艺考网
全国站

一篇文章了解常用Linux shell 命令的4 种使用方法

xunaa
2024-10-07 06:56:54
编辑说
read命令
读取:的基本格式
读取[-rs] [-a ARRAY] [-d delim] [-n nchars] [-N nchars] [-p 提示符] [-t 超时] [var1 var2 var3.]
-n(无换行符) -p(提示语句) -n(字符数) -t(

read命令

读取:的基本格式

读取[-rs] [-a ARRAY] [-d delim] [-n nchars] [-N nchars] [-p 提示符] [-t 超时] [var1 var2 var3.]

-n(无换行符) -p(提示语句) -n(字符数) -t(等待时间) -s(无回显)

1、基本读取

读取命令接收来自标准输入(键盘)或其他输入的输入文件描述字符输入(稍后讨论)。获得输入后,读取命令将数据放入标准变量中。以下是读命令:的最简单形式

#!/bin/bashecho -n 'Enter yourname: ' #参数-n的作用是不换行,默认echo是换行read name #从键盘输入echo 'hello $name,welcome to myprogram' #显示信息

由于read命令提供了-p参数,因此允许直接在read命令行上指定提示符。

一篇文章了解常用Linux shell 命令的4 种使用方法

所以上面的脚本可以简写为下面的脚本:

#!/bin/bashread -p '输入你的名字:' nameecho 'hello $name,欢迎来到myprogram'exit 0

上面的read中,read后的变量只有一个名字,也可以有多个。此时,如果输入多个数据,则将第一个数据赋予第一变量,将第二个数据赋予第二变量。如果输入的数据数量太多的话,最后所有的值都会给第一个变量。输入太少的话不会结束。

2、计时输入

使用读取命令存在潜在危险。该脚本很可能会停止并等待用户输入。如果无论是否输入数据,脚本都必须继续执行,则可以使用-t 选项指定计时器。

-t 选项指定读取命令等待输入的秒数。当定时器到期时,读命令返回非零退出状态;

#!/bin/bashif read -t 5 -p '请输入yourname:'名称然后echo 'hello$name ,欢迎来到我的脚本'else echo '对不起,太慢了'fiexit 0

一篇文章了解常用Linux shell 命令的4 种使用方法

除了输入时间计时外,还可以设置读取命令对输入的字符进行计数。当输入的字符数达到预定数量时,自动退出并将输入的数据赋值给变量。

#!/bin/bashread -n1 -p '你想继续[Y/N]吗?'答案$answer inY | y) echo '很好,继续';N | n) echo '好的,再见';*) echo '错误选择';esacexit 0

此示例使用-n 选项,后跟值1,指示read 命令在收到一个字符后立即退出。只需按下一个字符即可回答,读取命令立即接受输入并将其传递给变量。无需按Enter 键。

3、默读(输入不显示在监视器上)

有时,脚本需要用户输入,但不希望输入的数据显示在监视器上。一个典型的例子是输入密码,但当然还有许多其他数据需要隐藏。

-s选项防止在read命令中输入的数据显示在监视器上(实际上是显示了数据,但是read命令将文本颜色设置为与背景颜色相同)。

#!/bin/bashread -s -p '输入您的密码: \n' passecho '您的密码是$pass'exit 0

一篇文章了解常用Linux shell 命令的4 种使用方法

4、读文件

您可以使用read 命令读取Linux 系统上的文件。

每次调用读取命令都会从文件中读取一行文本。当文件没有可读行时,读取命令将以非零状态退出。

读取文件的关键是如何将文本中的数据传输到读取命令中。

最常见的方法是在文件上使用cat 命令并将结果直接通过管道传输到包含读取命令的while 命令

示例:

#!/bin/bashcount=1 #赋值语句,无空格cat test | while read line do echo 'Line $count:$line' count=$[ $count +1 ] #注意括号中的空格。 didecho '完成'退出0

用户评论

娇眉恨

终于找到了解释<code>read</code>命令教程!以前用的不咋会

    有11位网友表示赞同!

轨迹!

shell脚本里面<i>read</i>真是太常用啦,这篇文章能让我更好地掌握它的运用

    有14位网友表示赞同!

罪歌

原来读用户的输入还有这么多种方式!

    有14位网友表示赞同!

凉话刺骨

这四种用法都好好学!以后用shell写脚本可以更灵活了

    有20位网友表示赞同!

凉笙墨染

学习linux shell一直是我的目标,这篇教程真是太棒了!

    有19位网友表示赞同!

雁過藍天

Shell命令真复杂,幸好找到了这么详细的解说。

    有19位网友表示赞同!

冷风谷离殇

看完这篇文章感觉对<i>read</i> 命令有了更深层的理解

    有12位网友表示赞同!

巷雨优美回忆

之前总是用错误的用法啊!

    有6位网友表示赞同!

微信名字

免责声明
本站所有收录的学校、专业及发布的图片、内容,均收集整理自互联网,仅用于信息展示,不作为择校或选择专业的建议,若有侵权请联系删除!

大家都在看

一篇文章了解常用Linux shell 命令的4 种使用方法

一篇文章了解常用Linux shell 命令的4 种使用方法

read命令 读取:的基本格式 读取[-rs] [-a ARRAY] [-d delim] [-n nchars] [-N nchars] [-p 提示符] [-t 超时] [var1 var2 var3.] -n(无换行符) -p(提示语句) -n(字符数) -t(
2024-10-07
String.valueOf(Object) 与String.valueOf(Object) 的比较对象.toString(对象)

String.valueOf(Object) 与String.valueOf(Object) 的比较对象.toString(对象)

String.valueOf(Object) 和Objects.toString(Object) 这两个方法本质上做同样的事情: 对传入的对象调用toString() 方法。在这种情况下,只要字符串“null”不为null,或者将null
2024-10-07
精通英语:直到

精通英语:直到

2.他们工作到八点钟。 3.她昨晚十点才睡觉。昨晚她直到十点才睡觉。 4.直到听到闹钟声我才醒来。 (点击) 直到它的同义词是直到。 作为准备。随后是n./n.phr。它的意思是直到
2024-10-07
初中英语考试70要求句型详解:till/until和not

初中英语考试70要求句型详解:till/until和not

4. not.until.句型中的强调句,无需倒置词序。 他发明了许多治疗伤员的新方法,但直到战后他才做出了最重要的发现。 5. not.until.句型与其他句型的比较 not.until. 句型总是表
2024-10-07
在强调句中使用not.until. 结构

在强调句中使用not.until. 结构

大家一定要熟悉强调句的使用,尤其是作为形式主语的强调句型。但当句子中出现not.until.时,很多朋友还是会感到困惑。今天我就和大家一起探讨一下not…until…强调句的用法。
2024-10-07
直到和不.直到的用法总结

直到和不.直到的用法总结

til的意思是“直到”,表示动作持续到某一时间点,常与进行性动词连用; not.until 的意思是“直到.”,表示该动作要到某个时间点才会发生,否则不会发生。它经常与瞬态动词一起使用
2024-10-07
英语not.until用于强调句型的用法

英语not.until用于强调句型的用法

not.until 用于强调句型的用法 英语语法和句法重点句子 有这么一道测试题,涉及到not…until…句型: 他摘下墨镜并不是__________,我意识到他是一位著名歌手。 A. 当,那个B. 直
2024-10-07
热词的使用不仅……而且……

热词的使用不仅……而且……

1.就近原则不仅……而且连接两个主语时,谓语动词必须与最近的主语保持相同的人称和数字。也就是说,句子中的谓语动词既由其后的单词决定,又由谓语的单复数形式决定。 不仅他的
2024-10-07
不仅……而且……

不仅……而且……

“不仅……而且……”: 1.他不仅来了,还带来了礼物。他不仅来了,还带来了一份礼物。 2.她不仅唱歌好听,而且跳舞也很漂亮。她不仅唱歌好听,而且跳舞也很漂亮。 3.他们不仅聪明,而
2024-10-07
不仅……还有完整的使用说明(建议家长收藏)

不仅……还有完整的使用说明(建议家长收藏)

它是对应使用的相关词,意思是“不但……而且……”不仅……而且……通常用来连接两个等价的平行元素,如主语、谓语、谓语、宾语或状语等也可以用来连接两个子句。使用时应注意
2024-10-07