Shell中对多个逻辑判断结果取非


Shell中对多个逻辑判断结果取非

1 前言

当一个if条件语句中,有多个逻辑判断的时候,想对这多个逻辑判断的结果取非,如何进行操作呢?

比如如下的逻辑判断:

if [ -n "$name" -a $name == "bulingfeng" ]

直接在if后面加个!后,发现语法异常了;

2 解决方案

把整个[ ]使用()进行包裹,然后进行取非即可,样例如下:

if !([ -n "$name" -a  $name == "bulingfeng" ])

3 拓展

如果你是使用(( ))[[ ]] 来进行的逻辑判断,同样使用( ) 把其进行包裹,然后取非即可;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM