转 shell if判断写成一行 和 shell中如何注释掉一段话

#######sample https://www.cnblogs.com/shiyiwen/p/8509417.html
shell if判断写成一行

[[ $? -eq 0 ]] && echo "backup $i success" || exit

#判断上一个命令是否执行正确,退出状态吗如果为0,则执行echo 。否则会认为[[ $? -eq 0 ]] && echo "backup $i success" 这一段执行错误,就会退出


如果命令值返回为空,则输出failed ,否则输出成功
[[ -z `ps -ef|grep weblogic|grep -v grep|awk '{print $2}'` ]] && echo "failed" || echo "backup success"


[[ -z `/usr/openv/volmgr/bin/tpconfig -l| grep DOWN| sed -n '1,6p'` ]] && echo " failed" || echo `hostname` "need check more"


[[ -z `/usr/openv/volmgr/bin/tpconfig -l| grep DOWN| sed -n '1,6p'` ]] && echo " " || echo `hostname`

[[ -z `/usr/openv/volmgr/bin/tpconfig -l| grep DOWN| sed -n '1,6p'` ]] && : || echo `hostname` "need check more driver status"

 


########sample shell中如何注释掉一段话

http://www.187299.com/archives/1204


: 就是什么也不作(do nothing)即空命令。他的最基本作用就是在if,then条件中。在if语句中各部分必须接执行命令,但有时你不在乎条件是为真(或假)只在乎相反情况。例如如果检测存在某路径什么也不做,不存在就echo报错。可写为
if[ -d $DIRECTORY ]
then : #do nothing
eles
echo “the directory do not exit ”
fi

posted @ 2021-06-22 16:22  feiyun8616  阅读(445)  评论(0编辑  收藏  举报