1. mode=${1:-sart}用法
解释:$1代表命令行输入的参数,如果$1存在且不为空,m就是$1,如果$1不存在或为空,那么m就是start
脚本实例:
#!/bin/bash
N=${1:-3}
echo "start hadoop-master container..."
i=1
while [ $i -lt $N ]
do
echo "start hadoop-slave$i container..."
i=$(( $i + 1 ))
done
注:当执行该脚本不加参数的时候N默认为3,当为5的时候则N为5
2. exit 0和exit 1有什么区别
当你exit 0的时候,在调用环境echo $?就返回0,也就是说调用环境就认为你的这个程序执行正确。
当你exit 1的时候,一般是出错定义这个1,也可以是其他数字,很多系统程序这个错误编号是有约定的含义的。
但不为0就表示程序运行出错。 调用环境就可以根据这个返回值判断 你这个程序运行是否ok。
如果你用脚本a调用脚本b,要在a中判断b是否正常返回,就是根据exit 0 or 1来识别。执行完b后,判断$?就是返回值