本文共 1165 字,大约阅读时间需要 3 分钟。
导读 | Linux中编写SHELL脚本必然要接触到变量,本文对bash中不同的变量类型进行一个简要说明 |
这里需要注意的是对变量进行赋值时,”=”两边是不能有空白的,否则就会报错。
root@ubuntu:~# LIST='/etc'root@ubuntu:~# echo $LIST/etcroot@ubuntu:~# LIST = '/etc'LIST: command not found
export var_name=value,如果变量已经定义可以只是用变量名 export var_name,即可用下面两种方式声明环境变量: 1. export var_name=value 2. var_name=value export var_name 脚本在执行命令时会启动一个子shell环境变量: 系统自动执行的脚本(非命令行启动)就需要自我定义需要的个环境变量
$1,$2,$3,……cat first.sh test.txt hello$1: first.sh$2: test.txt$3: hello
shift:踢掉参数
shift n:踢掉n个参数,默认踢掉一个参数 这里需要注意的是 0为调用该脚本的名字,而参数作为变量的话第10个变量不能直接写 10,而需要写成${10}。$?:上一个命令执行状态的返回值: 程序执行可能有两种返回值: 1. 程序执行结果 2. 程序状态返回吗(0-255) 0 则为执行正确 1-255 则执行出错(1,2,127系统预留); 可以自定义返回值来获取不同的错误状态。
#:获取当前shell命令行中参数的总个数*:获取当前shell的所有参数 “ 1 2 3…,受IFS控制 @:这个程序的所有参数 “ 1''“ 2″ “ 3''“…”,不受IFS控制 0 获取当前执行的shell脚本的文件名 n获取当前执行的shell脚本的第n个参数值,n=1..9 获取当前shell的进程号(PID) ! 执行上一个指令的PID
本文转载自:
免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好: