歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> Linux Shell腳本邏輯操作符簡介

Linux Shell腳本邏輯操作符簡介

日期:2017/3/1 11:09:00   编辑:SHELL編程

在寫程序時,會用到條件判斷,測試條件是否成立。很多時候,判斷條件是多個的,這個時候需要用到邏輯操作符。shell腳本中常用的有哪些邏輯操作符呢?

1、邏輯與: -a

格式: conditon1 -a condition2

結果:codition1和conditon2 都為真,才返回真,否則返回假。

演示:測試可執行文件lnmp

  1. [root@localhost ~]# [ -x lnmp -a -f lnmp ] #lmmp是可執行且是文件 結果返回真
  2. [root@localhost ~]# echo $?
  3. 0
  4. [root@localhost ~]# [ -x lnmp -a -d lnmp ] #lnmp可執行但不是目錄 結果返回假
  5. [root@localhost ~]# echo $?
  6. 1

拓展:該操作符類似於其他語言的&& ,a 是and 的第一個字母

2、邏輯或:-o

格式: condition1 -o conditon2

結果:condition1和condition2中,www.6688.cc有一個條件為真,即返回真,否則返回假

演示:測試可執行文件lnmp

  1. [root@localhost ~]# [ -x lnmp -o -d lnmp ] #lmmp是可執行但不是目錄 結果仍返回真
  2. [root@localhost ~]# echo $?
  3. 0
  4. [root@localhost ~]# [ -L lnmp -o -d lnmp ] #lnmp可執行文件,但不是目錄,也不是符號鏈接文件, 結果返回假
  5. [root@localhost ~]# echo $?
  6. 1

拓展:該操作類似於其他語言的||

提醒:-o 是單詞or 的第一個字母o,而不是數字0

3、邏輯非:!

格式:! condition

結果:返回條件測試condition結果的相反值

演示:測試可執行文件lnmp

  1. [root@localhost ~]# [ ! -x lnmp ] #lnmp 是可執行文件,返回假
  2. [root@localhost ~]# echo $?
  3. 1
  4. [root@localhost ~]# [ ! -d lnmp ] #lnmp 不是目錄,返回真
  5. [root@localhost ~]# echo $?
  6. 0
Copyright © Linux教程網 All Rights Reserved