2026/1/10 10:16:51
网站建设
项目流程
中国建设部网站首页,教学设计的网站,友情链接交换网址大全,江阴营销网站建设1.基础最简单的用法是不带任何参数#xff0c;直接读取用户输入#xff0c;默认存入内置变量 REPLY 中。#!/bin/bash
echo 请输入一段话#xff1a;
read # 等待用户输入
echo 你输入的是#xff1a;$REPLY2. 带提示符与变量赋值实际开发中#…1.基础最简单的用法是不带任何参数直接读取用户输入默认存入内置变量REPLY中。#!/bin/bashecho请输入一段话read# 等待用户输入echo你输入的是$REPLY2. 带提示符与变量赋值实际开发中我们通常会指定变量名来存储输入并使用-p选项直接显示提示信息这样比先用echo打印提示更简洁。#!/bin/bashread-p请输入你的名字: nameread-p请输入你的年龄: ageecho你好$name你今年$age岁。3. 静默输入适合密码需要输入密码等敏感信息不希望屏幕显示输入内容可以使用-s选项。#!/bin/bashread-sp请输入密码: passwdecho# 这里加一个换行否则光标会紧跟在密码后面echo密码已输入完毕为了安全这里不显示明文4. 限制输入时间与字符数场景 A限时回答使用-t选项可以设置等待时间秒。如果用户在规定时间内没有输入脚本会自动继续执行。#!/bin/bashifread-t3-p请在3秒内回答 (y/n): answer;thenecho你的选择是:$answerelseecho时间到已默认选择否。fi场景 B只读取特定字符使用-n选项可以限制读取的字符数量。例如只需要用户按一个键来确认。#!/bin/bashread-n1 -p是否继续(y/n): choiceecho# 换行if[$choicey];thenecho继续执行...elseecho操作取消。fi5. 高级用法数组与分隔符场景 A读取为数组如果你希望用户输入一串用空格分隔的内容如多个文件名可以使用-a将其存入数组。#!/bin/bashread-a file_list -p请输入要处理的文件名空格分隔: echo你选择了${#file_list[]}个文件:forfilein${file_list[]};doecho -$filedone场景 B自定义结束符默认情况下read遇到回车键换行符才结束。使用-d可以指定其他字符作为结束标志。例如以#号结束输入。#!/bin/bashread-d#-p请输入文本以 # 号结束输入: contentechoecho你输入的内容是:$content总结常用选项选项作用典型场景-p 提示显示提示信息通用的输入交互-s静默输入不回显输入密码、密钥-t 5设置超时时间秒防止脚本长时间挂起-n 1限制读取字符数简单的 yes/no 选择-a arr将输入存入数组批量处理多个参数-r原始模式不转义\输入包含路径或特殊符号特别提示读取文件除了读取键盘read还常用于逐行读取文件。通常结合while循环使用这是处理文本文件如配置文件的常用技巧# 读取文件内容whilereadline;doecho处理行:$linedonefilename.txt