变量

1.变量时什么

   一句话概括:变量就是用来临时保存数据的,可以变化的

2、什么时候需要定义变量

多次使用,在代码中重复使用

3、变量如何定义

变量名=变量值

定义 A=hello

调取 $A或者${A}

更改变量 A=word

取消变量 unset A

4、变量的定义规则

  一、变量名区分大小写

  二、变量名不能有特殊符号

  三、变量名不能以数字开头

  四、等号两边不能有任何空格

  五、变量名尽量做到见名知意

5、变量定义方式

 一、基本方式

       $A 和${A}

      相同点:都可以调取变量

      不同点:${变量名}可以只截取变量的一部分,而$变量名不可以

       A=123456

       ${A:2:4}    表示从变量第二位开始取4个,第一位为0

二、命令方式

  $(uname -r)

三、交互式定义变量(read)

   让用户自己定义变量值

   语法:read 选项 变量名

   -p 定义提示用户的信息

   -n 定义字符数(限制变量值的长度)

   -s 不显示(不显示用户输入的信息)

   -t  定义超时时间,默认单位为秒

  

   变量值来自文件

四、定义有类型的变量(declare)

目的:给变量做一些限制,固定变量的类型,比如:整型、只读

用法:declare 选项 变量名=变量值

-i  将变量看成整数  declare -i A=123

-r  将变量定义为只读变量 declare -r B=hello

-x 将变量通过环境导出变成环境变量 declare -x AAAA=12344相当于export AAAA=12344

   

系统变量(内置变量):

$?  上一条命令执行后返回的状态,状态值为0说明上面正常

$0   当前执行的程序或脚本本身

$#   脚本后面接的参数的个数  ./1.sh a b c $#

$*   脚本后面接的参数  ./1.sh a b c $*

$@  脚本后面跟的参数

$1-$9 脚本后面的位置参数,$1代表第一个参数,以此类推

${10}-${n}   脚本后面的位置参数,超过10要用大括号

$$   当前进程的进程号

$!  后台运行的最后一个进程号

!$  调用最后一条命令历史中的参数

  

  

原文地址:https://www.cnblogs.com/jdwy24/p/13141789.html