转载自 https://blog.****.net/zhyoulun/article/details/52529363
显式赋值
为了避免歧义,显式赋值时禁止在等号两边添加空格。
message=hello echo $message
读取
交互式读取
read myvar echo $myvar
读取连个变量
read aa bb echo $aa echo $bb
如果输入的是’aaa bbb ccc’,那么aa=′aaa′,aa=′aaa′,b=’bbb ccc’
带输入提示
echo -n "input your name:" read name echo "Hello, $name"
从文件读取一行
read message < /etc/my.cnf echo $message
按行读取文件
while read message do echo $message sleep 1 date done < /etc/my.cnf
命令替换
将“中的命令结果赋值给变量
TODAY=`date +%A` echo $TODAY
等价于
TODAY=$(date +%A) echo $TODAY
后者在对于原始的Bourne Shell不支持。
参考
- Shell脚本编程诀窍——适用于Linux、Bash等