shell 读取变量

读取变量

shell变量包括两种:环境变量和用户定义变量。环境变量用于定制shell的运行环境,保证shell的正确运行,可以参考环境变量那一节来进行配置;用户定义的变量在shell脚本中用来作为临时的存储空间

#设置变量
# 变量名=变量值  之间没有空格
myvar=this_is_variable
# 如果变量值包含空格,需要使用引号
myvar1="this is variable1"
# 使用变量,这里可以有引号也可以没有引号,还可以使用${varName}
myvar2=$myvar1
myvar3="$myvar1"
# 如果变量后有其他英数单词要用${},否则shell无法正确判断变量
echo Hi,${myvar1}Mm
# 如果是多个变量连接的话需要引号
myvar4="$myvar $myvar1"

注意:设定变量时,等号两边不能有空格

可以通过$variable来读取变量,如果变量是一段命令的话,可以将命令放在括号中,shell会将这个这个命令进行执行,替换为命令的输出结果,该过程称为命令替换

$(command)

交互式

上述方式是静态的在命令行或者脚本中使用赋值语句来给变量赋值,使用起来对用户并不友好,所以可以使用read来接收键盘输入的变量,与位置参数变量相比更适合于人机交互

read [选项] [变量]
------------------------
-s  隐藏输入(密码)
-p  提示信息
-t  等待时间
-n  限制字符个数
-a name  把词读入到name数组中去
-e 把一整行读入到第一个变量中
#!/bin/bash
# 将键盘输入的内容赋给num1变量
read -p "输入数字1: " num1
read -p "输入数字2: " num2
#$((运算式))可以进行数值运算
echo "两个数之和为"$(($num1 + $num2))
zhanghe@bogon shell % sh add.sh 
输入数字1: 13
输入数字2: 12
两个数之和为25

https://zhhll.icu/2021/linux/shell/读取变量/

本文由 mdnice 多平台发布

posted @ 2023-09-15 14:47  拾光师  阅读(70)  评论(0编辑  收藏  举报  来源