临时变量
开启新的 sh, 临时变量不存在
在 shell 脚本运行时, 会先查找系统环境变量 ENV
该变量指定了环境文件(加载顺序通常是 / etc/profile ~/.bash_profile ~/.bashrc /etc/bashrc)
实现变量局部生效
编辑用户变量文件
立即生效命令
开启新的 sh, 变量存在
切换普通用户, 变量不存在
实现 / mnt 下脚本直接执行
编辑用户变量文件
显示 PATH 环境变量
实现变量全局生效
编辑系统变量文件
立即生效命令
切换普通用户, 变量存在
.
双引号: 所见非所得, 它会先把变量解析之后, 再输出
加双引号即可显示 *
以下符号不可解析
单引号: 所见即所得
反斜杠( \ ) : 转义字符 / 逃脱字符, Linux 如果 echo 要让转义字符发生作用, 就要使用 - e 选项, 且转义字符要使用双引号
反引号(``) : 命令替换, 通常用于把命令输出结果传给入变量中
另一种方式
.
$ 符的用法
编辑文件
$1$2$3 是传递参数的顺序 ,$*[email protected]是全部 $# 是参数个数 $0 是文件名
传递参数 1 2 3 br/>![](https://s1.51cto.com/images/blog/201909/03/3de2a851e6f55f838583eb550a3a1f8e.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
区分 $*[email protected]
$* 把参数作为一个字符串整体 (单字符串) 返回
编辑文件
传递参数 1 2 3 br/>![](https://s1.51cto.com/images/blog/201909/03/8c91ff9728fa49f7de85cd9ee6df8c33.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
[email protected]把每个参数作为一个字符串返回
传递参数 1 2 3
$! Shell 最后运行的后台 Process 的 PID(后台运行的最后一个进程的进程 ID 号)
$? 最后运行的命令的结束代码 (返回值) 即执行上一个指令的返回值 (显示最后命令的退出状态. 0 表示没有错误, 其他任何值表明有错误)
$$ Shell 本身的 PID(ProcessID, 即脚本运行的当前进程 ID 号)
来源: http://www.bubuko.com/infodetail-3184880.html