根据变量的生效范围等标准划分下面变量类型:

    set:查看所有变量(全局变量,局部变量还有函数)

1.局部变量(标准变量,普通变量):生效范围为当前shell进程---当前会话(session);对当前shell之外的其它shell进程,包括当前shell的子shell进程均无效

echo $$:当前进程编号(4496)
echo $PPID:父进程编号(4272)

bash中变量的种类及其用法
直观查看进程父子关系:pstree -p
bash中变量的种类及其用法

2.环境(全局)变量:生效范围为当前shell进程及其子进程(export=declare -x|env命令可以查看系统中环境变量)

    第一种定义方法:name=mage------export  name
    第二种定义方法:export name=mage
    第三种定义方法:declare -x name=mage

bash中变量的种类及其用法
bash中变量的种类及其用法

3.本地变量:生效范围为当前shell进程中某代码片断,通常指函数

4.位置变量:$1, $2, ...来表示,用于让脚本在脚本代码中调用通过命令行传递给它的参数

5.特殊变量:$?, $0, $*, $@, $#,$$

变量赋值:name=‘value’

  • 可以使用引用value:

    • (1) 可以是直接字串; name=“root"
    • (2) 变量引用:name="$USER"
    • (3) 命令引用:name=`COMMAND` name=$(COMMAND)
  • 变量引用:${name} $name

    • "":弱引用,其中的变量引用会被替换为变量值
    • '':强引用,其中的变量引用不会被替换为变量值,而保持原字符串

显示已定义的所有变量:set

删除变量:unset name

相关文章:

  • 2021-11-30
  • 2022-12-23
  • 2021-12-18
  • 2022-12-23
  • 2021-10-07
  • 2021-10-13
  • 2021-08-09
猜你喜欢
  • 2021-10-31
  • 2022-12-23
  • 2021-10-15
  • 2022-12-23
  • 2021-04-26
  • 2021-12-26
  • 2021-11-25
相关资源
相似解决方案