1. 创建一个名字为date的程序文件
内容:
echo "Mr.$USER, Today is:"
echo date "+%B%d%A"
echo "Wish you a lucky day !"
权限:chmod +x date
2. 创建一个名字为P1的程序文件,带参数
1) 位置参数: $N, N是一个数字,从0开始,$0表示程序名字,从1开始表示传递给程序的参数.
2) 内部参数: $0是内部参数,$1可有可无,$#传递给程序的参数数目,$?上一个代买或者shell中退出的情况,如果正常退出则返回0反之为非0值.$*传递给程序的所有参数组成的字符串.
echo "Program name is $0"
echo "There are totally $# parameters passed to this program"
echo "The last is $?"
echo "The parameters are $*"
if test $# -eq 0
then
echo "Please specify a file!"
else
gzip $1
mv $1.gz $HOME/dustbin
echo "File $1 is deleted !"
fi
3. 变量表达式
1) 字符串比较
=, !=, -n(长度大于0), -z(长度等于0)
2)数字比较
-eq, -ge, -le, -ne, -gt, -lt
3) 逻辑操作
-a(and), -o(or)
4) 文件操作
-d 目录存在
-f 文件存在
-L 符号连接
-r 对象存在且可读
-s 对象存在且长度非零
-w 对象存在且可写
-x 对象存在且可执行
4 循环语句
1) for循环,
for 变量 in 列表
do
操作
done
2) while循环,
while 表达式
do
操作
done
3) until循环,
until 表达式
do
操作
done
例子:
for i in $HOME/temp/*.TXT
do
rm -f $i
echo "$i has been deleted!"
done
5 条件语句
if语句
if 表达式1 then
操作
elif 表达式2 then
操作
elif 表达式3 then
操作
...
else
操作
fi
case语句
case 字符串 in
值1|值2)
操作;;
值3|值4)
操作;;
值5|值6)
操作;;
*)
操作;;
esac