1.特定变量参数
$# 传递到脚本的参数个数
$*  以一个单字符串显示所有向脚本传递的参数
$$  脚本运行的当前进程ID号
$!   后台运行的最后一个进程的进程ID号
$@ 与$#相同,但是使用时加引号,并在引号中返回每个参数
$-   显示shell使用的当前选项,与set命令功能相同
$?   显示最后命令的退出状态,0表示没有错误,其他值表明有错误

2.
#vi test1.sh
  #!/bin/bash
  echo"这个脚本的名字是$0"
  echo"第1个参数是$1"
  echo"第2个参数是$2"
  echo"第3个参数是$3"
  echo"第4个参数是$4"
  echo"第5个参数是$5"
  echo "当前的PID是$$"
#chmod +x test1.sh
#./test1.sh a b c

3.
#vi test1.sh
  #!/bin/bash
  echo"这个脚本的名字是$0"
  echo"第1个参数是$1"
  echo"第2个参数是$2"
  echo"第3个参数是$3"
  echo"第4个参数是$4"
  echo"第5个参数是$5"
  echo "参数个数为:$#"
#chmod +x test1.sh
#./test1.sh a b c d
#./test1.sh a b

4.
#mkdir abc
#echo $?
  返回0建立成功。

5.
#mkdir /root
#echo $?
  返回不是0因为/root已经存在了!!!

6.
#e=""
#echo "e=$e"
#let "e+=1"
#echo "e=$e"

7.
#echo "f=$f"
#let "f+=1"
#echo "f=$f"

8.
#vi test2.sh
 echo "the name of this script is \"$0\"."
 echo "the name of this script is \"`basename $0`\"."
        basename 只取当前的名字去掉./
 echo "the name of this script is \"$0\"."

9.
#vi test2.sh
 #!/bin/bash
 if[-n "$1"]
 then
   echo "Parameter #1 is $1"
 fi
if [-n "${10}"]    //大于9的参数必须出现在{}中
  then
   echo "Parameter #10 is ${10}"
fi

#chmod +x test2.sh
#./test2.sh 1 2 3 4  5 6 7 8 9 book 11

10.
#echo $(2#101011) //二进制的101011
输出43

11.
case "$variable" in
abc) echo "\$variable=abc";;
xyz) echo "\$variable=xyz";;
esac

12.
#ls -l | grep ^...x   //显示第4位是x的文件

13.
#let "var=((a=9,15/3))"
, 只返回最后一项 5
#echo $var

14.
冒号:与true相同
#vi test3.sh
#!/bin/bash
while :  //当条件为真
do
   echo "welcome book"
   sleep 5
done

15.
#let b=2**10
#echo $b
   1024

16.
$ 在正则表达式作为行结束符
${} 参数替换
$*  位置参数
$@ 位置参数
$? 退出状态变量 $?保存一个命令
     一个函数或者脚本本身的退出状态
$$ 进程ID变量,这个$$变量保存运行脚本进程ID
() 命令组 ,数组
#a=welcome
#(a=welcome)括号中的命令作为一个子shell来运行
#echo $a
  output:welcome

17.
#cat {a.sh,b.sh}>c.sh
{} 代码块,又被称为内部组
[]  test //主要用于条件测试 test

18.
#vi test4.sh
#!/bin/bash
x=3;y=2
if [ $x -lt $y];then    //lt是大于的意思
echo "x less y"
else
echo "x not less y"
fi

19.
#vi test5.sh
#!/bin/bash
x=3;y=2
if $x -lt $y;then    //lt是大于的意思
echo "x less y"
else
echo "x not less y"
fi
方括号等于test

20.
\<和\>  单词的边界符

21.
&后台执行
#sleep 5
#sleep 5 &