shell变量设置和引用

Shell变量:

shell变量是shell程序在内存中存储数据信息的容器。

  1. shell变量的设置:COLOR=red,设置变量时不应该有空格
  2. shell变量的引用:echo $COLOR或者echo ${COLOR},大括号是为了区分变量和其他字符

自定义变量:

自定义变量是自己命名的变量,不能够与系统中已有的变量同名。

  1. 自定义变量的设置:Day=Friday,使用习惯是首字母大写,不要都小写或者都大写
  2. 自定义变量的引用:同shell,或者echo “Today is ${Day}”,显示一串字符

环境变量:

环境变量是系统用来存储环境信息的变量,如主机名,IP地址等等,通常有系统初始配置提供,即配置文件。

  1. 环境变量的使用:与自定义变量一样,但命名被约束,通常大写,env命令可以读取系统的环境变量
  2. 环境变量的导出和保存:export可以将当前shell的环境变量导出并保存到子shell中,以备下次开机使用,子shell是当前shell派生出来的
  3. 环境变量可以保存到家目录的~/.bashrc文件中供以后固化使用
  4. 常用的环境变量:

                                     PATH环境变量

                                     PS*系列环境变量

env可以查看所有的环境变量,使用vi ~/.bashrc来编辑当前用户的环境变量的配置文件,在这里改变后会永久改变

PATH变量存储系统命令所在的路径,通常为绝对路径,其提供了系统命令搜寻的便利。

  1. PATH变量的设置:PATH=/home/username/bin:$PATH,要有,其前面是命令所在的路径,然后将这个路径追加到原来的PATH中
  2. PATH变量的引用:和其他变量一样,设置的时候也是先引用

预定义变量:

预定义变量是内置变量,不能进行设置,只能够引用。用来存储shell程序运行过程中的状态信息。

常用的预定义变量:

         $$     存储当前进程的进程号

         $0     存储当前进程的进程名

         $?     存储当前命令的返回值(查看上一条命令是否成功,0成功,非0失败)

         $!     存储最后一个后台进程的进程号

引用的时候直接echo $$

位置变量:

位置变量可用来引用传递给程序的参数,按照传递的位置顺序来引用。

位置变量的使用:$1….$9,当参数超过9个时,用shift切取命令,位置变量只能在程序中使用。

例如:

Vi  test.txt     创建一个文件

Ls –ld $1            显示$1本身

Ls –l $1              显示$1下面的

Shift                    shift,将之前的$1切掉,原来的$2变为$1,类推

Ls $2                  被执行的时候其实是ls $3

:wq                     保存退出

在引用的时候     . test.txt /home /user /bin

                                     .代表读取,/home,/user/bin分别传递给$1,$2,$3

你可能感兴趣的:(Linux)