shell脚本变量学习小记

转载自:http://blog.csdn.net/love__coder/article/details/6744332
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、显示脚本执行状态

执行完脚步,输入 echo $?

注意:0,表示成功

11、脚本运行的当前进程id
$$

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、显示所有命令行参数

$* 或 $@

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

$((var1 opr var2))

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

例如: $((5+1))

18、命令代换$()

类似于 反引号`

例如:echo $(date)

发表评论

电子邮件地址不会被公开。 必填项已用*标注