Linux(入门基础):53---变量的键盘读取,变量的类型定义(read、declare、typeset)
一、read命令
1.概念
- read可以声明一个变量。但是不是直接用=号直接赋值,而是让使用者自己输入变量的内容,输入之后按回车结束
2.公式
- read [选项] 变量名
相关选项
- -p:后面可以接提示字符串,交互功能
- -t:后面接用户输入字符串的等待的时间(以秒为单位)
3.案例
- ①不加任何选项二
- ②加上-p和-t选项:提示信息并只等待30秒用户输入
二、declare与typeset命令
declare与typeset命令的功能相同,下面介绍declare
1.功能
- 可以定义一个变量的类型,以及更改变量的各种属性
- 单独使用declare时与set命令功能相同,查看所有的变量(包含环境变量、与操作界面有关的变量与自定义变量)
2.命令格式
- delcare [选项] 变量名
相关选项
- -a:将后面的变量定义成数组类型
- -i:将后面的变量定义为整数类型
- -x:将后面的变量变为环境变量。与export命令功能相同。
- +x:如果该变量为环境变量,可以将变量变为普通变量。与-x相反
- -r:设置变量为readonly类型,该变量不能被更改内容也不能被unset(删除)
- -p:可以列出该变量的类型
3.注意事项
- 变量的默认类型为字符串。所以不加任何选项,定义的变量为字符串
- bash环境中的数值运算,默认最多仅能达到整数形态。所以:1/3=0
- 如果使用-r选项不小心把变量变为readonly模式,则需要注销再登录才能恢复该变量的类型
4.使用案例
- ①将一个变量变为整型
如果不加declare -i定义的变量为字符串
- ②将一个变量变为环境变量
可以看到sum为环境变量且为整型
- ③将一个变量变为readonly类型
可以看到更改sum会提示sum为readonly类型,不可修改
- ④查看sum变量的类型
- ⑤查看所有的变量(包含环境变量、与操作界面有关的变量与自定义变量)
因为过多,与more配合使用