Linux变量
Linux下的变量主要分为三种:本地变量、环境变量和位置变量
本地变量本地变量是用户在当前shell生命周期内声明的变量,随着shell进程的终止而销毁。
环境变量适用于所有由登录进程产生的子进程(父进程的环境变量在子进程中可用)。
Shell参数用于向shell脚本传递参数,只读。
本地变量
本地变量如同局部变量,只在当前shell中起作用,不会影响其他shell中的变量。
变量赋值
使用variable=value赋值,变量赋值遵循从右到左的顺序
$X=$Y Y=y $echo $X $y
变量显示
通过echo显示某一变量
$echo $WEEK
通过set显示当前SHELL的所有变量,包括内置变量与用户定义过得所有变量。
$set
变量调用
使用$符号进行变量调用,若与其他字符相连则应加上大括号。
$echo Today is ${WEEK}day
删除变量
使用unset命令删除变量的赋值
$unset Z
命令替换
在Bourne Shell中可以使变量在特定条件下执行
${variable: -value} 在变量为空时,使用默认的value值。变量的值并没有改变。
${variable:=value} 不但使用默认值进行替换,而且将默认值赋给该变量。
${varibale:+value} 当变量已赋值时,则用默认值进行提换,如果为空则显示空。
${variable:?message} 当变量已赋值时,则输出值。未赋值则输出message。$echo Hello $UNAME $Hello $echo Hello ${ UNAME: -there} $Hello there $echo $UNAME $ $UNAME=hohn $echo Hello ${ UNAME: -there} $Hello john
特殊命令
readonly 变量名
使变量名变为只读。单独运行readonly显示所有的制度变量。
export 变量名
export命令可以将本地变量声明为环境变量,供子进程使用。
Shell参数
位置参数
由系统提供的参数称为位置参数。位置参数的值可以用 N