Welcome 微信登录

首页 / 操作系统 / Linux / 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表示没有错误,其他任何值表示有错误