Shell程序的的变量及参数
在shell程序中,数据用变量来存储,使用变量时不需要声明,默认所有变量类型为字符串类型.
这里$*,"$@"和$@的效果是一样的.
使用set设置位置参数.
形如set $(ls -l)
这样的命令则会把ls -l的结果以此作为他的参数.
常见的环境变量
环境变量 | 说明 |
---|---|
$HOME | 当前用户主目录 |
$PATH | 用以搜索命令的目录列表,用:分隔 |
$PS1 | 命令提示符,通常是用$.root用户则是# |
$PS2 | 二级提示符,用来提示后需输入,通常是> |
$IFS | 内部与分隔符 |
变量的声明
在shell中,使用一般变量可以不用声明,可对于一些特殊变量需要声明.
声明格式:
declare [options] [name=[value]]
typeset [options] [name=[value]]
#unset用于删除shell变量
unset name
常用选项options:
-a 声明一个数组array
-f 声明一个函数function
-i 声明一个整数integer
-r 声明只读变量readonly
-x 声明全局变量,可供子进程使用
注:赋值语句中,等号前后不能有空格.
整型变量不可以被赋非整型的值
set用于查看本地定义的shell变量
变量引用
echo $ {name:-string}
当变量(name)存在时,显示变量的值,否则显示string
echo $ {name:=string}
当变量(name)存在时,显示变量的值,否则把string赋给name,并输出
echo $ {name:?string}
当变量(name)存在时,显示变量的值,否则显示name:string
echo $ {name:=string}
当变量(name)存在时,显示变量的值,否则显示空
来源:CSDN
作者:klaus08
链接:https://blog.csdn.net/qq_43773164/article/details/104800349