预定义变量用来保存脚本程序的执行信息
1、直接使用这些变量
2、不能直接为这些变量赋值
$0 //当前所在的进程或脚本
$$ //当前运行进程的PID号
$? //命令执行后的返回状态,0表示正常,1或者其他值表示异常
$#//已加载的位置变量的个数
$*//所在位置变量的值
扩展赋值操作
区分三种定界符
双引号 “ ”:允许扩展,以$ 引用其他变量
单引号 ‘ ’:禁止扩展,即便$也视为普通字符
反撇号 :将命令的执行输出作为变量值
#!/bin/bash
for i in `seq 1 15` #使用的是反引号
do
echo -e "\033[32mha$i\033[0m"
done
j=0
#注意变量赋值的时候,=两边绝对不能有空格,括号与括号不能有空格
for ((i=1; i<=100; i++))
do
j=`expr $i + $j` #j=$(( $j + $i ))
done
echo $j
#批量解压当前文件夹下所有的.tar.gz文件
for i in ` ls ./*.sh` #./*.tar.gz`
do
echo "$i"
touch test1
echo "$i" >> /mnt/mntsdb1/linux/shell/test1
# tar -zxvf $i >> ./test1
done