read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据。
参数说明:
1、简单读取
测试结果为:
2、-p 参数,允许在 read 命令行中直接指定一个提示。
测试结果为:
3、-t 参数指定 read 命令等待输入的秒数,当计时满时,read命令返回一个非零退出状态。
执行程序不输入,等待 5 秒后:
4、除了输入时间计时,还可以使用 -n 参数设置 read 命令计数输入的字符。当输入的字符数目达到预定数目时,自动退出,并将输入的数据赋值给变量。
该例子使用了-n 选项,后接数值 1,指示 read 命令只要接受到一个字符就退出。只要按下一个字符进行回答,read 命令立即接受输入并将其传给变量,无需按回车键。
只接收 2 个输入就退出:
执行程序输入两个字符:
5、 -s 选项能够使 read 命令中输入的数据不显示在命令终端上(实际上,数据是显示的,只是 read 命令将文本颜色设置成与背景相同的颜色)。输入密码常用这个选项。
执行程序输入密码后是不显示的:
6.读取文件
每次调用 read 命令都会读取文件中的 "一行" 文本。当文件没有可读的行时,read 命令将以非零状态退出。
通过什么样的方法将文件中的数据传给 read 呢?使用 cat 命令并通过管道将结果直接传送给包含 read 命令的 while 命令。
测试文件 test.txt 内容如下:
测试代码:
执行结果为:
使用 -e 参数,以下实例输入字符 a 后按下 Tab 键就会输出相关的文件名(该目录存在的):
linux脚本文件中,从文件中读取数据并赋值给变量的 *** 作方法和步骤如下:
1、首先,创建一个名�¸.shell.shçæ件ï¼vi shell.shï¼å¦ä¸å¾æ示ã
2ãå ¶æ¬¡ï¼å®æä¸è¿°æ¥éª¤åï¼è¾å ¥å¤´æ件#!/bin/bashï¼å¦ä¸å¾æ示ã
3ãæ¥çï¼å®æä¸è¿°æ¥éª¤åï¼ä¿å并æå¼æéï¼chmod +x shell.shï¼å¹¶è¿è¡ï¼./shell.shï¼å¦ä¸å¾æ示ã
4ãç¶åï¼å®æä¸è¿°æ¥éª¤åï¼è¾å ¥ä¸ä¸ªå符串ï¼å¦ä¸å¾æ示ã
5ãéåï¼å®æä¸è¿°æ¥éª¤åï¼è¦è®¡ç®ä¹ä»¥5çå¼ï¼éè¦æå¦ä¸æ¹å¼ç¼è¾shell.shï¼vi shell.shï¼èæ¬å½ä»¤ï¼å¦ä¸å¾æ示ã
6ãæåï¼ä¿åï¼å¼æéè¿è¡ï¼è¾åºä¸ä¸ªæ´æ°ï¼å¦ä¸å¾æ示ãè¿æ ·ï¼é®é¢å°±è§£å³äºã
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)