shell中常见的命令
1.set -e
父进程中有这个命令,当子进程异常退出(返回非零),父进程就会终止,不继续执行;
2.set +e
子进程exit 1或者其他非零值时,父进程会继续执行。
3. if 语句
if [ $? -ne 0 ] #-ne 是比较数值的
then
echo "hello"
else
echo "hi"
fi
if [ "$1" == 'a' ] #比较字符串,注意$1指代脚本的第一个传入参数
then
echo "hello"
else
echo "hi"
fi
注意[]内两侧有空格, == 两侧也有空格 ,-ne 两侧也有。
4.变量定义
temp=`date +%Y%m%d%H%M%S`
echo $temp
注意=两边没有空格
另外,如果当前脚本中执行了其他脚本,同时这个脚本用到了temp变量,需要
export temp=`date +%Y%m%d%H%M%S`
5.source ~/.bash_profile
如果脚本中需要其他的文件,需要source,类似于直接执行
6.sh -x run.sh && echo "OK" || echo "not ok"
连续执行两条命令,当第一条执行成功时,输出 ok ;失败时,输出not ok。
7.在脚本中删除文件时,如果遇到文件中不存在时,会导致脚本报错退出
touch out_ #创建空文件
rm out_*