一、变量
-
概念:变量就是一个字符串,可以指向一个内容,该内容可以是路径、命令、数字、字符串等...
-
变量的分类:
-
环境变量:或者叫做全局变量。
-
自定义变量:或者叫做局部变量。
-
二、变量的定义与赋值
- 定义:直接使用变量名指向一个内容,该变量就即时创建/赋值:变量名=变量所指内容
- 提示:
- 通常大写字符的变量为系统默认变量,自行设置的变量建议使用小写字符(根据自己的喜好与设定)
- 变量名称只能是英文字母和数字的组合,且不能以数字开头
注意事项
- ①等号两边不能有空格。例如下面是一个错误演示案例
- ②变量的内容有空格时,使用双引号或者单引号括起来
- ③变量所指的内容使用""(双引号)括起来,双引号内的特殊字符如&等,可以保持原有的特性。
下面是一个演示案例:$LANG 内容为 en_US.UTF-8,则 var="lang is $LANG" 等价于 var="lang is en_US.UTF-8"
- ④变量所指的内容使用''(单引号)括起来,单引号内的特殊字符仅为一般字符(纯文本)。下面是一个演示案例:var='lang is $LANG' 就是 var='lang is $LANG',并没有替换
- ⑤可以使用\转义字符将特殊字符(ENTER、$、空格、'、\等)变为一般字符,类似于C语言。下面是一个演示案例:var=lang\\dong等价于var=lang\dong。\\转义为一个\
三、数组变量类型的定义
- 公式:数组名[索引]=内容
- 注意事项:索引为数字,自己决定,可以随意取,但建议有顺序
使用案例
- 逐个赋值,然后echo查看
- 删除数组,然后再查看为空
四、环境变量的定义与设置(export)
- 概念:
- 使用 export 可以使该变量成为环境变量,使变量在子进程下也可以执行。
- 普通变量类似于局部变量。环境变量类似于全局变量。
- 格式:
export 变量名
五、父进程和子进程的关系
- 概念:当我们登录 Linux 取得一个 bash 之后,这个 bash 就是一个独立的进程(拥有独特的PID),在这个 bash 下执行的任何命令都是由这个 bash 衍生出来的子进程。
- 两者之间的关系:当我们在命令行执行 bash 这个命令之后,就会进入一个子进程。此时父进程处于等待状态,所执行的操作都在子进程中操作,输入 exit 或者 logout 可以退出这个子进程,恢复来到父进程当中。
- 特点:子进程只会继承父进程的环境变量,而不会继承父进程的自定义变量。所以环境变量在子进程中可以使用,自定义变量不可以使用。此时就可以使用 export 命令设置环境变量。
- 为什么环境变量可以被子进程所使用:当启动一个 shell 时,操作系统会分配一内存区给 shell使用,使用 export 可以使自定义变量的内容写入上述的内存区域当中。当加载子进程时,子shell 可以将父 shell 的环境变量所在的内存区域导入自己的环境变量区块当中。
六、删除变量(unset)
- 方法:如果不想要一个变量,可以使用 unset 直接删除
unset 变量名
转载:Linux变量的定义、赋值、查看、删除(export、echo、unset)_董哥的黑板报的博客-CSDN博客_linux定义变量赋值
(SAW:Game Over!)