1.来自命令行的参数
./test 10 20 40 这些变量被成为位置参数. $0为程序名, $1为第一个参数, $2为第二个参数.....
2.特殊的参数变量
参数计数: $# 表示来自命令行的参数个数
所有参数: $* 和 $@在一个变量中包含所有命令行参数. $*把所有参数当场一个单词处理. $@将所有参数作为同一个字符串中的多个单词处理.
位移: shift 将每个参数变量左移一个位置. ( $0不变, 丢弃原$1变量 )
3.处理选项
看一个例子
#!/bin/bash
# extracting command line options
while [ -n "$1" ]
do
case "$1" in
-a) echo "-a option is in command line" ;;
-b) echo "-b opt