shell脚本变量学习小记

1、查看所有的shell变量

set

2、查看所有的只读shell变量

readonly

3、变量设置值

格式:var_name=var_value

注意:=连接变量名和变量值,=两侧不能有空格;当值var_value含空格时,需要双引号把var_value包起来

4、输出变量值

echo $var_name

echo ${var_name}

5、变量值连接

echo $var_name1$var_name2

注意,两个变量之间没有空格

6、查看所有环境变量

env

7、给环境变量设置值

VAR_NAME=VALUE

export VAR_NAME

8、清除变量

unset var_name

9、导出变量到子脚本中

父脚本中定义好变量,然后 export var_name

子脚本中可以使用该变量. $var_name或${var_name}

10、上次执行命令或函数的返回值

          $?

        一般情况,0表示成功

11、进程id

           ×)脚本运行的当前进程id(The program's PID)

$$

×)最后执行的后台命令的PID(Last program's PID)

$!

12、传递给shell脚本的参数个数

$#

13、反引号`

设置系统的命令输出到变量

echo "shell file name is :`basename $0` "

14、以串行形式,打印当前整个目录

echo *

15、替换运算符,

           1) ${var_name:-def_Val}    

                  如果变量var_name存在且为非null,返回该变量的值,否则返回默认值def-Val

                   注意var_name与:之间没有空格,:与-之间可以有空格。主要用途,如果变量未定义,则用默认值.

            2) ${var_name:=val}   

                   如果变量var_name存在且为非null,返回该变量的值,否则,把val的值赋给变量var_name,并返回var_name的值val

                   注意var_name与:之间没有空格,:与=之间也不能有空格。

            3)${var_name:?message},  

                 如果变量var_name存在且为非null,返回该变量的值,否则返回该变量的名字var_name:提示信息meesage,并退出当前命令或脚本

   注意var_name与:之间没有空格,:与?之间也不能有空格。

             4) ${var_name:+val}   

                  如果变量var_name存在且为非null,返回val,否则返回null

                 注意var_name与:之间没有空格,:与+之间也不能有空格。

15、返回变量长度

        ${#val_name}

16、参数

       ×) 显示所有命令行参数

         $*  或 $@

       ×)脚本程序名称

         $0

       ×)第n个参数

         $n 

        说明: $1 第一个参数 ,$2 第二个……

17、算术运算操作  $(())       

       $((var1 opr var2)) 

只能是+-*/ 和()运算符,并且只能做整数运算

       例如:  $((5+1))

18、命令代换$()

类似于 反引号`

例如:echo $(date)


         








你可能感兴趣的:(Date,shell,脚本,File,null)