变量规则
- ==变量赋值时不加$==
var=123
,==使用时加$==$var
或${var}
- 输出变量:
echo $var
或echo ${var}
- 变量类型默认是字符串
- 变量与变量内容以一个等号连接,且等号两边不能有空格,如
i=1
- 变量名只能由英文和数字组成,且开头不能是数字
- 变量内容有空格可使用双引号或单引号括起来
- 可用
\
转义特殊字符(enter,$等) - 可用反单引号`
或
$(命令)给一串命令作输入 -
version=$(uname -r)输出
echo $version得
2.6.18` - 追加变量内容,直接在变量后面写上追加内容,如
PATH=$PATH:/home/bin
- 某个变量需要给子进程使用,用
export
使变量变成环境变量,如export var
。因为子进程仅会继承父进程的环境变量 - 取消某个变量
unset var
,进入子进程bash
- 非环境变量当连接断开时会自动清除
特殊变量
$0 | 当前脚本的文件名 |
$num | num为从1开始的数字,$1是第一个参数,$2是第二个参数,${10}是第十个参数 |
$# | 传入脚本的参数的个数 |
$* | 所有的位置参数(作为单个字符串,如"$1 $2 ...") |
$@ | 所有的位置参数(每个都作为独立的字符串,如"$1"、"$2" ...)。 |
$? | 当前shell进程中上一个命令的返回值,如果上一个命令成功执行则$?的值为0,否则为其他非零值,常用做if语句条件 |
$$ | 当前shell进程的pid |
$! | 后台运行的最后一个进程的pid |
$- | 显示shell使用的当前选项 |
$_ | 之前命令的最后一个参数 |
从键盘读取内容到变量
read命令
read [-pt] var
# -p 后面接提示符
# -t 后面接等待的秒数
declare/typeset命令,声明变量类型
declare [-aixr] var
# -a 将var定义为数组
# -i 将var定义为整型
# -x 将var变成环境变量
# +x -x的反动作
# -r 设为readonly,该变量不可被更改和重设
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。