bash编程-变量

变量,顾名思义,即为可变化的量,用于存储可变的值。一般编程语言都都有变量的定义,bash也不例外。

 

1 变量类型

bash shell中的变量类型粗略的分为环境变量、位置变量、和预定义的特殊变量

 

1.1 环境变量

环境变量是设置系统运行环境的变量,都是由大写字母组成,下面列举了一些常见的环境变量

$HOME    用户主目录的路径
$PATH    bash执行命令时,搜索的目录路径
$TERM    终端类型
$PWD     当前目录
$SHELL   当前解释器的绝对路径
$LONGNAME    当前用户的登录名

tips:变量名前的"$"符号是调用变量的意思,bash中调用变量要在变量名前加上"$"

下面来看一下环境变量的具体运用的例子:

将当前目录添加到系统的环境变量当中

export PATH=$PATH:$PWD

 

1.2 位置变量

位置变量是在命令行中执行脚本时,传入的参数。

比如在终端中执行一个叫script.sh的脚本,"./script.sh start",而start就是传入的位置参数

$1表示第一个位置参数 
$2表示第二个位置参数
$0表示脚本名

下面通过一个脚本来看下具体的例子:

#!/bin/bash

#输出脚本名和前两个位置参数

echo "该脚本的名字为 $0 "
echo "该脚本的第一位置参数为 $1 "
echo "该脚本的第二个参数为 $2 "

运行:
$ bash 位置参数.sh  11 22

输出:
该脚本的名字为 位置参数.sh 
该脚本的第一位置参数为 11 
该脚本的第二个参数为 22

 

更多的位置参数:

${10} … ${N}	          第10个到N个参数列表
$* or $@	              除了$0外的所有位置参数
$FUNCNAME	              函数名称(仅在函数内部有值)

 

1.3 预定义的特殊变量

预定义的变量都具有特殊的意义,不能由用户重新设置,都是$符号和另一个符号组成

$#    实际位置参数的个数(不含脚本名)
$*    命令行中所有位置参数组成的字符串
$!    上一个后台命令对应的进程号
$?    最近一条命令执行的返回值,为十进制数,0表示执行成功
$$    当前进程号的PID

 

2. 变量的操作

 

2.1 创建变量

格式为:  变量名=值    (等号两边不能有空格)

NAME="JACK"     

 

2.2 调用变量

调用变量有两种方式,如调用刚刚创建的NAME:

${NAME}   或   $NAME

区别在于${}可以让解释器识别变量的分界,如下面的情况:

echo "I am good at ${skill}Script"

还有调用数组中变量时:。。。待续

echo ${arrats[1]}

2.3删除变量

删除变量用shell内部的unset命令使用,如果变量未设置成只读属性,用户自定义的变量和环境变量都可以通过unset命令来删除
例如删除刚刚定义的变量NAME:

unset NAME

 

转载于:https://my.oschina.net/u/3785630/blog/1648299

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值