这段时间工作上接触到Linux下的Shell脚本,以前对Shell编程是个门外汉,经过这几天的锻炼,总算可以窥见一斑
使用Shell脚本,注定离不开很多脚本命令,也可以说是Linux系统下的,比如简单的echo, uname, grep等
作为初学者,自然需要了解其基本的语法以及书写规范,简单的就是循环语句,if语句,case语句什么的
另外就是一些判断条件,比如整型数比较大小,字符串的比较。下面是个简单的例子:
while getopts :cnsrx: c ; do
case $c in
x) XARG=$OPTARG
XFLAG=1;;
s) SARG=1;;
c) if [ "$(uname -s)" == "Linux" ]
then
CARG=1
else
print $USAGE
exit 2
fi;;
n) if [ "$(uname -s)" == "Linux" ]
then
NARG=1
else
print $USAGE
exit 2
fi;;
r) RARG=1;;
?) print $USAGE
exit 2;;
esac
done
这过程中,我也犯过小错误,就是字符串比较的时候,==两边都需要有空格留出,要不然if 判断条件始终为真,书写的时候空格是很重要的,[ ]这个两端也需要有空格空出。