SHELL编程是非类型的解释型语言,不像C++、JAVA语言编程时需要先声明变量,Shell给一个变量赋值时,也就定义了变量;Shell变量为弱类型,定义变量不需要声明类型,但在使用时需要明确变量的类型,可以使用Declare指定类型,Declare常见参数有:
+/- "-"可用来指定变量的属性,"+"为取消变量所设的属性; -f 仅显示函数; r 将变量设置为只读; x 指定的变量会成为环境变量,可供shell以外的程序来使用; i 指定类型为数值,字符串或运算式。 |
Shell变量名定义:首个字符必须为字母(a-z,A-Z),不能以数字开头,中间不能有空格,可以使用下划线(_),不能使用(-),也不能使用标点符号等。
Shell编程常见系统变量:
$0 当前脚本名称 $n 当前脚本的第n个参数,n=1,2,.....9 $* 当前脚本的所有参数(不包括程序本身) $# 当前脚本的参数个数(不包括程序本身) $? 命令或程序执行完后的状态,返回0表示执行成功 $$ 程序本身的PID号 |
PATH 命令所示路径,以冒号为分割; HOME 打印用户家目录; SHELL 显示当前Shell类型; USER 打印当前用户名; ID 打印当前用户id信息; PWD 显示当前所在路径; TERM 打印当前终端类型; HOSTNAME 显示当前主机名。 |
A=test.net 自定义变量A; N_SOFT=nginx-1.12.0.tar.gz 自定义变量N_SOFT; BACK_DIR=/data/backup/ 自定义变量BACK_DIR; IP1=192.168.1.11 自定义变量IP1; IP2=192.168.1.12 自定义变量IP2。 |