变量
- 本地变量
在当前系统的某个环境下才能生效的变量,作用范围小。- 普通变量
常用定义:变量名="变量值" - 命令变量
常用定义:变量名=$(命令)
意义:
1 执行`或者$()范围内的命令
2 将命令执行后的结果,赋值给新的变量名A
- 普通变量
- 全局变量
当前shell以及其派生出来的子shell中都有效的变量env # 显示全局变量
- 常用定义:
方法一: 变量=值 export 变量 方法二:(最常用) export 变量=值
- 内置变量
$0 获取当前执行的shell脚本文件名,包括脚本路径 #!/bin/bash # 获取脚本的名称 echo "我脚本的名称是: file.sh" echo "我脚本的名称是:$0" $n 获取当前执行的shell脚本的第n个参数值,n=1..9,当n为0时表示脚本的文件名,如果n大于9就要用大括号括起来${10} #!/bin/bash # 获取指定位置的参数 echo "第一个位置的参数是: $1" echo "第二个位置的参数是: $2" echo "第三个位置的参数是: $3" echo "第四个位置的参数是: $4" $# 获取当前shell命令行中参数的总个数 # cat num.sh #!/bin/bash # 获取当前脚本传入的参数数量 echo "当前脚本传入的参数数量是: $#" $? 获取执行上一个指令的返回值(0为成功,非0为失败) # bash nihao bash: nihao: No such file or directory # echo $? 127 # ls file1.sh num.sh test.sh weizhi.sh # echo $? 0
查看变量
- 常用方法:
方法一: $变量名 # 在命令行/脚本中使用 方法二: "$变量名" # 在命令行/脚本中使用 方法三: ${变量名} # echo " hello ${变量名} world " 使用频率较高 方法四: "${变量名}" # 标准使用方式
取消变量
unset 变量名