ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Shell变量

Shell变量

原创 Linux操作系统 作者:os-ora 时间:2010-08-03 13:33:28 0 删除 编辑

一、用户自定义变量

    1.定义新的变量

          [root@localhost ~]#变量名=变量值

          注意:等号两边没有空格! 

    2.查看和引用变量的值

          [root@localhost ~]#echo $变量名

          当变量名称容易和紧跟其后的其他字符相混淆时,需要添加“{}”将变量名包围起来,否则

      就无法确定正确的变量名称。

    3.为变量赋值的常用方法

         (1)双引号("")

          [root@localhost ~]#变量名="变量值"

          使用双引号时,允许在双引号的范围内使用$符号来引用其他变量的值。

         (2)单引号('')

          [root@localhost ~]#变量名='变量值'

          使用单引号时,将不允许在单引号范围内引用其他变量的值。

         (3)反撇号(``)

          [root@localhost ~]#变量名=`变量值`

          使用反撇号时,允许将执行特定命令的输出结果赋给变量。

         (4)read命令

          read命令可以从终端读取输入,实现交互过程。read从标准输入读入一行内容,并以空格为

      分隔符,将读入的各字段分别赋给指定的变量。若只指定一个变量,则将整行内容赋给该变量。

          [root@localhost ~]#read  变量名

Shell变量

          read命令可以结合“-p”选项来设置提示信息,用于告诉用户应该输入的内容,使交互操作

      界面更加易用。

          [root@localhost ~]#read -p "提示信息" 变量名

Shell变量

    4.设置变量作用范围

          对于用户自定义的变量,默认情况下只能在当前Shell环境下使用,称为局部变量。可以使用

      export命令将指定的变量设置为全局变量。

          [root@localhost ~]#export  变量名

          export命令还可以在输出变量的同时对指定变量赋值。

          [root@localhost ~]#export  变量名=变量值

    5.清除自定义变量

          [root@localhost ~]#unset  变量名

    6.数值变量的计算

          Bash只适合进行简单的 整数运算,可使用expr命令。

          [root@localhost ~]#expr  $变量名1  运算符  $变量名2  运算符  $变量名3  ……

          常用的几种运算符如下:

          +:加法运算。

          -:减法运算。

          \*:乘法运算。

          /:除法运算。

          %:取余运算。

 

二、环境变量

        环境变量是指用户登录后系统预先设定好的一类Shell变量,其功能是设置用户的Shell环境,

    环境变量的值一般由Linux系统自行维护,会随着用户状态的改变而改变,用户可以通过读取环境

    变量来了解自己的当前状态。

    1.查看环境变量

          通过不带任何参数的set命令,可以查看系统中所有的Shell变量,包括环境变量、用户自定

      义变量等。

          [root@localhost ~]#set

          常用的环境变量如下:

          $USER:表示当前用户的登录名称。

          $LOGNAME:同USER,表示当前用户的登录名称。

          $UID:表示当前用户的UID号。

          $SHELL:表示用户使用的登录Shell。

          $HOME:表示用户的宿主目录。

          $PWD:表示用户当前的工作目录。

          $PATH:表示当前用户的命令搜索路径。

          $PS1:表示当前用户的主提示符。

          $PS2:表示当前用户的 辅助提示符。

    2.环境变量配置文件

          全局配置文件,对所有用户起作用:/etc/profile

          用户配置文件,允许覆盖全局配置,对某用户起作用:~/.bash_profile

   

三、位置变量

        在执行Shell命令操作时,除了输入的第一个字段(命令名或脚本程序名)以外,其余的字符串

    参数按照从左到右的顺序依次赋值给位置变量。

        需要引用这些位置变量的值时,采用“$n”的格式, 其中n是参数的位置序号(从1-9)。

  

四、预定义变量

        预定义变量是由Bash程序预先定义好的一些特殊变量,用户只能使用,而不能创建新的预定义

    变量。

        常用的预定义变量如下:

        $#:表示命令行中位置参数的数量。

        $*:表示所有位置参数的内容。

        $?:表示命令执行后返回的状态,用于检查上一个命令执行的是否正确。命令退出状态为0表示

    命令执行正确,任何非0值的表示命令执行错误。

        $$:表示当前进程的进程号。

        $!:表示后台运行的最后一个进程的进程号。

        $0:表示当前执行的进程的进程名。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16566331/viewspace-670071/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: shell中read命令
请登录后发表评论 登录
全部评论

注册时间:2010-01-12

  • 博文量
    148
  • 访问量
    410409