Linux下shell编程学习笔记
Linux下shell编程学习笔记
shell变量
本地变量
readonly variable //将变量variable设置为只读
readonly -p //列出当前制度变量
环境变量
定义:
$HOME/.bash_profile
/etc/profile
export CHINAITLAB="SHENZHEN" //定义一个环境变量
env //查看当前的环境变量
echo $CHINAITLAB //输出变量的值
echo ${CHINAITLAB:+"We change the variable"} //临时改变当前变量的值,前提是变量必须有值
echo ${BIANLIANG:?"NO variable"} //如果变量BIANLIAN有定义则显示变量的值,该变量没有定义则显示NO variable;这种书写格式主要用来检测变量是否存在
echo ${TEST:-"bingo"} //变量没有定义的话输入bingo,如果变量定义了则输出定义值,与上面类似
echo ${GHOST:="bingo"} //定义一个变量负值为bingo
unset GHOST //取消变量,如果设置为readonly则不能取消变量
位置变量 //在运行脚本的时候同时将一个值按顺序附给相应的位置变量
$0 //脚本的名字
$1-$9 //位置参数,示例见script1.sh和script2.sh,运行./script1 a b c d e 将abcde按顺序负值给$1 $2 $3 $4 $5;运行script2.sh ifconfig将把ifconfig传递给位置变量$1,返回ifconfig文件的位置
标准变量
HOME
IFS
LOGNAME
MAIL //当前用户的邮箱位置
MAILCHECK //每隔多少秒检查是否有新邮件
MAILPATH
TERM //终端类型
PATH //执行命令时要查找的目录
PS1 //[root@rhce ~]#的登陆样式由PS1定义
PS2 //定义了>允许命令分行输入
SHELL
MANPATH //获得帮助文件的位置
TERMINFO //终端信息
特殊变量 //示例见script3.sh
$# //传递脚本参数的个数
$* //以单字符串显示所有向脚本传递的参数
$$ //脚本当前运行的ID号
$! //后台运行的最后一个进程的ID号
$@ //与$#相同,返回形式不一样
$- //与set命令功能相同
$? //显示命令退出的状态,0表示没有错误,其他任何值表示有错误
|
【内容导航】 | |
第1页:shell变量 | 第2页:影响变量的命令 |
第3页:命令与符号 |
评论暂时关闭