ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
# 简介 * shell 变量可以理解为编程语言中的变量 * 变量在被取用时,前面必须要加上钱字号 `$` 才行,如读取变量内容:`echo $PATH` * 若该变量为扩增变量内容时,则可用 `$变量名称` 或 `${变量名称}` 或 `"$变量名称"` 累加内容,如下所示:`PATH=$PATH:/home/bin` 或 `PATH=${PATH}:/home/bin` 或 `PATH="$PATH":/home/bin` * 若该变量需要在其他子程序运行,则需要以 export 来使变量变成环境变量:`export PATH` * 通常大写字符为系统默认变量,自行配置变量可以使用小写字符,方便判断 * 系统环境变量中的 `PATH` 代表运行文件搜寻路径,`HOME` 代表代表用户的家目录 * 在当前 shell 的情况下,去激活另一个新的 shell ,新的那个 shell 就是子程序!在一般的状态下,父程序的自定义变量是无法在子程序内使用的。但是透过 export 将变量变成环境变量后,就能够在子程序底下应用了 书写规则如下: * 变量与变量内容以一个等号 `=` 来连结,如: `myname=VBird` * 等号两边不能直接接空格符,如下所示为错误:`myname = VBird` 或 `myname=VBird Tsai` * 变量名称只能是英文字母与数字,但是开头字符不能是数字 * 变量内容若有空格符可使用双引号`"`或单引号`'`将变量内容结合起来 生效周期规则如下: * 直接在 shell 中运行命令,仅对当前对话生效 * 写入当前用户配置文件,如 `~/.zshrc` 则仅对当前登录用户生效 * 写入 `/etc/profile` 对所有系统用户永久生效 修改文件后可直接调用 `source /etc/profile` 使生效 # 参考文档 [Shell 的变量功能](http://cn.linux.vbird.org/linux_basic/0320bash.php#variable_var)