Shell中的变量

Posted shuaiqi-xcj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell中的变量相关的知识,希望对你有一定的参考价值。

1、常用系统变量

$HOME、$PWD、$SHELL、$USER

技术图片

家目录、当前目录、默认解释器、当前用户

 

显示当前Shell中所有变量:set

技术图片

 

2、自定义变量

2.1.基本语法

(1)定义变量:变量=值    等号左右没有空格

技术图片

 

(2)撤销变量:unset 变量

技术图片

 

(3)声明静态变量:readonly 变量,注意:不能unset,不能改变值

技术图片

 

2.2变量定义规则

(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写。

(2)等号两侧不能有空格。

(3)在bash中,变量默认类型都是字符串类型,无法直接进行数值计算。

(4)变脸的值如果有空格,需要使用双引号或单引号括起来。

 

重点:

可以把变量提升为全局环境变量,供其他Shell程序使用

export 变量名

 

3.特殊变量$n

3.1、基本语法

$n(功能描述:n为数字,$0代表该脚本名称,$1-$9代表第一到第九个参数,十个以上的参数,十以上的参数需要哦那个大括号包含,如$10)

 

3.2、案例实操

技术图片

 

技术图片

 

 

4、特殊变量$#

4.1、基本语法

$#(功能描述:获取所有输入参数个数,常用于循环)

 

4.2、实例实操

技术图片

 

技术图片

 

 

5、特殊变量$*、$@

5.1、基本语法

$*    (功能描述:这个变量代表命令行中所有的参数,$*把所有参数看作一个整体)

$@    (功能描述:这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待)

 

5.2、实例实操

技术图片

 

技术图片

 

6、特殊变量$?

6.1、基本语法

$? (功能描述:最后一次执行的命令的返回状态。如果这个变量的值为0,证明上一个命令正确执行;如果这个变量的值为非0(具体是哪个数由命令自己决定),则证明给上一个命令执行不正确)

 

6.2、实例实操

判断helloword.sh脚本是否正确执行

技术图片

失败例子:

技术图片

 
 
 

以上是关于Shell中的变量的主要内容,如果未能解决你的问题,请参考以下文章

Shell编程-03-Shell中的特殊变量和扩展变量

shell脚本中的变量及变量传参详解

shell中的$取变量操作

Shell中的变量

Shell中的变量

[100 tips about shell] Shell中的变量作用域,全局和局部变量