首頁 php教程 PHP开发 Shell裡面括號的用法

Shell裡面括號的用法

Nov 23, 2016 pm 05:41 PM
shell

中括號

中括號分為單中括號[],和雙中括號[[]],中括號一般用於表達式判斷中,小括號也可以用於表達式,這個後面提到。

單中括號[]

A=5
B=3
[ $A -eq $B ]    判断A是否等于B
[ ${A} -eq ${B} ]  作用同上
[ "${A}" -eq "${B}" ]  作用同上
登入後複製

    

A=ABC
[ $A == "ABC" ]   或写成  [ ${A} == "ABC" ]   或写成  [ "${A}" == "ABC" ]
[ $A \> "ABC" ]
登入後複製

    

[ -d ./aaa.sh -a -e ./bbb ]  测试aaa.sh是否为目录并且bbb是否存在,如果都符合则返回真
[ -d ./aaa.sh -o -e ./bbb ]  测试aaa.sh是否为目录并且bbb是否存在,满足一个条件则返回真
登入後複製

  

括號

變數與運算子之間也要有空格


變數可以直接用$來引用,也可以使用${}以及"${}"來引用,雖然可以直接使用${},但是建議還是用"${} ",或直接用$,來引用變數

字串要用雙引號引起來

字串比較一般使用==來做字串是否相同測試,使用<或>進行大小比較,在單中括號中將字元進行大於和小於的比較要用轉移>和<。比較原理就是對比ASCII來比較。

另外在單中括號中還可以使用-a和-o這樣的邏輯運算子

雙中括號[[     

A=5
B=3
[[ $A -eq $B ]]    判断A是否等于B
[[ ${A} -eq ${B} ]]  作用同上
[[ "${A}" -eq "${B}" ]]  作用同上
登入後複製


雙中括號的使用和單中括號的使用規則類似

雙中括號中間字符串的大於小於比較不需要轉義,且字串可以不用雙引號引用

雙中號括號裡面可以使用&&、||做邏輯運算子

雙中括號裡面還可以做模糊匹配,使用=~表達式2可以是正規表示式

A=ABC
[[ $A == "ABC" ]]   或写成  [[ ${A} == "ABC" ]]   或写成  [[ "${A}" == "ABC" ]] 或写成 [[ $A == ABC ]]
[[ $A > "ABC" ]]
登入後複製

    

[[ -d ./aaa.sh && -e ./bbb ]]  测试aaa.sh是否为目录并且bbb是否存在,如果都符合则返回真
[[ -d ./aaa.sh || -e ./bbb ]]  测试aaa.sh是否为目录并且bbb是否存在,满足一个条件则返回真
登入後複製

   

括號

單小括號單獨使用是表示指令組,會透過子shell的方式依序執行括號中的指令

A=ABC
[[ $A =~ "A" ]]   做模式匹配,这个表达式为真
或写成  [[ ${A} =~ "A" ]]  或写成  [[ "$[A]" =~ "A" ]]
[[ $A = A* ]] 表达式为真  [[ $A = B* ]] 表达式为假
登入後複製

   

最常見的用法這是指令替換中使用,指令也可以使用反引號``

[ 表达式1 -a 表达式2 ] 等效于 [[ 表达式1 && 表达式2 ]] 等效于 [ 表达式1 ] && [ 表达式2 ] 等效于 [[ 表达式1 ]] && [[ 表达式2 ]]
登入後複製

   


雙小括號

常用在算術運算上以及在for形式

1到10循環執行

[ 表达式1 -o 表达式2 ] 等效于 [[ 表达式1 || 表达式2 ]] 等效于 [ 表达式1 ] || [ 表达式2 ] 等效于 [[ 表达式1 ]] || [[ 表达式2 ]]
登入後複製

   

While語句的形式

1到10循環

(ls ./;echo "hello";mkdir -p /tmp/ccc)
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何在 Windows 11 上安裝經典 Shell? 如何在 Windows 11 上安裝經典 Shell? Apr 21, 2023 pm 09:13 PM

&lt;p&gt;自訂您的作業系統是讓您的日常生活更加愉快的絕佳方式。您可以變更使用者介面、套用自訂主題、新增小工具等等。因此,我們今天將向您展示如何在Windows11上安裝ClassicShell。 &lt;/p&gt;&lt;p&gt;程式已經存在了很長時間,並允許您修改作業系統。志工現在已經開始運作該組織,該組織於2017年解散。新專案名為OpenShell,目前在Github上可供有興趣的人使用。 &lt;/p&gt;&a

PowerShell 部署失敗並出現 HRESULT 0x80073D02 問題修復 PowerShell 部署失敗並出現 HRESULT 0x80073D02 問題修復 May 10, 2023 am 11:02 AM

您在執行腳本時是否看到此錯誤訊息「Add-AppxPackage:部署失敗,HRESULT:0x80073D02,無法安裝該包,因為它修改的資源目前正在使用中。PowerShell中出現錯誤0x80073D02…」?如錯誤訊息所述,當使用者在前一個進程執行時嘗試重新註冊一個或所有WindowsShellExperienceHost應用程式時,確實會發生這種情況。我們已經獲得了一些簡單的解決方案來快速解決這個問題。修復1–終止體驗主機程序您必須在執行powershell指令之前結束

以下是 Open Shell Windows 11 無法正常運作問題的修復 以下是 Open Shell Windows 11 無法正常運作問題的修復 Apr 14, 2023 pm 02:07 PM

無法在Windows 11上運行的 Open shell 並不是一個新問題,而且自從這個新作業系統問世以來一直困擾著使用者。 Open-Shell Windows 11 不工作問題的原因並不具體。它可能是由程式中的意外錯誤、病毒或惡意軟體的存在或損壞的系統檔案引起的。對於不知道的人,Open-Shell 是 2017 年停產的 Classic Shell 的替代品。您可以查看我們的教學課程,以了解如何在 Windows 11 上安裝 Classic Shell。如何替換 Windows 11 的開始菜

探險家.exe 在系統啟動時不啟動 [修復] 探險家.exe 在系統啟動時不啟動 [修復] Jun 03, 2023 am 08:31 AM

如今,許多Windows用戶開始遇到嚴重的Windows系統問題。問題是系統載入後Explorer.exe無法啟動,使用者無法開啟檔案或資料夾。雖然,Windows使用者在某些情況下可以使用命令提示字元手動開啟Windows資源管理器,並且每次系統重新啟動或系統啟動後都必須這樣做。這可能是有問題的,並且是由於下面提到的以下因素造成的。損壞的系統檔案。啟用快速啟動設定。過時或有問題的顯示驅動程式。對系統中的某些服務進行了更改。修改後的註冊表文件。請記住以上所有因素,我們提出了一些肯定會對用戶有所幫助

Linux快速刪除檔案末尾行的操作步驟 Linux快速刪除檔案末尾行的操作步驟 Mar 01, 2024 pm 09:36 PM

Linux系統下在處理檔案時,有時候需要刪除檔案末端的行。這種操作在實際應用中很常見,可以透過一些簡單的命令來實現。本文將介紹在Linux系統中快速刪除檔案結尾行的操作步驟,同時提供具體的程式碼範例。步驟一:檢視文件末尾行在進行刪除操作之前,首先需要確認文件的末尾行是哪一行。可以使用tail指令來查看文件的結尾行,具體指令如下:tail-n1filena

在 Windows 上執行 shell 腳本檔案的不同方法 在 Windows 上執行 shell 腳本檔案的不同方法 Apr 13, 2023 am 11:58 AM

適用於 Linux 的 Windows 子系統第一種選擇是使用適用於 Linux 或 WSL 的 Windows 子系統,這是一個相容層,用於在 Windows 系統上本機執行 Linux 二進位執行檔。它適用於大多數場景,允許您在 Windows 11/10 中執行 shell 腳本。 WSL 不會自動可用,因此您必須透過 Windows 裝置的開發人員設定來啟用它。您可以透過前往設定 > 更新和安全性 > 對於開發人員來完成。切換到開發人員模式並透過選擇是確認提示。接下來,找 W

超硬核! 11個非常實用的 Python 和 Shell 拿來就用腳本實例! 超硬核! 11個非常實用的 Python 和 Shell 拿來就用腳本實例! Apr 12, 2023 pm 01:52 PM

Python 腳本部分範例:企業微信警告、FTP 用戶端、SSH 用戶端、Saltstack 用戶端、vCenter 用戶端、取得網域名稱ssl 憑證過期時間、傳送今天的天氣預報以及未來的天氣趨​​勢圖;Shell 腳本部分實例:SVN完整備份、Zabbix 監控使用者密碼過期、建置本地YUM 以及上篇文章中有讀者的需求(負載高時,查出佔用比較高的進程腳本並儲存或推播通知);篇幅有些長,也請大家耐心翻到文末,畢竟有彩蛋。 Python 腳本部分企業微信警告此腳本透過企業微信應用,進行微信告警,可用於

如何安裝 Open Shell 以恢復 Windows 11 上的經典開始功能表 如何安裝 Open Shell 以恢復 Windows 11 上的經典開始功能表 Apr 18, 2023 pm 10:10 PM

OpenShell是一個免費的軟體實用程序,可用於自訂Windows11開始選單,使其類似於經典風格的選單或Windows7樣式的選單。先前版本的Windows上的開始功能表為使用者提供了一種瀏覽其係統內容的簡單方法。基本上,OpenShell是ClassicShell的替代品,它提供了不同的使用者介面元素,有助於從先前的Windows版本取得後一個版本的功能。一旦ClassicShell的開發在2017年停止,它就由GitHub志工以OpenShell的名義維護和開發。它與Win

See all articles