Bash 指令碼中的 Hello World
命令列或終端是 Linux 作業系統的重要組成部分,因為它允許全面管理和控制整個作業系統。即使我們談論的是使用圖形介面的 Linux 發行版,您仍然需要一個終端來釋放 Linux 的全部功能和潛力。
Linux 提供了一個“shell”來在命令列上工作。shell是一個命令直譯器,負責根據您在命令列上輸入的內容執行命令。
最流行的 shell 是bash(“Bourne Again Shell”的縮寫,“Bourne Shell”是 Unix 中第一個 shell 的名稱)。也可以使用其他 shell。它們可以提供額外的功能,但通常工作方式相同。
您的第一個 Shell 指令碼程式
我們有很多方法可以使用 shell 指令碼編寫我們的第一行程式碼。正如我們所討論的,終端是允許我們與系統對話的視窗。它是我們用來執行 shell 指令碼命令和檔案的主要元件。
直接在終端中編寫命令
此方法很簡單。我們首先需要從應用程式選單中開啟終端介面。這將根據您使用的桌面環境而有所不同。
作為快捷方式,您可以按CTRL + ALT + T開啟終端視窗,如下所示:
這可能與您的有所不同。我對此進行了一些更改,但不用擔心;命令是一樣的。區別僅僅是背景顏色。
使用“echo”命令
現在讓我們使用echo列印我們的“Hello World!”示例,這是一個在終端中列印的命令工具:
恭喜,您剛剛編寫了您的第一行 shell 指令碼程式碼,它列印訊息“Hello World”。
如果您注意的話,我們只是將命令直接寫入終端並執行它。
如果我們只需要編寫一行程式碼/命令,則此方法很有用。但是,如果我們需要編寫一個包含更多程式碼行和更多命令的指令碼怎麼辦?
使用 Bash 檔案
Bash 指令碼或 shell 指令碼表示包含一系列命令的文字檔案。實際上,任何可以執行多個命令的東西都可以被認為是 shell 指令碼。
讓我們建立最簡單的 shell 指令碼。為此,在主目錄中建立一個常規文字檔案,我們將其命名為hello:
touch hello
touch命令將在主目錄中建立一個名為hello的新檔案。您可以使用此方法,或者您可以只使用滑鼠並像平時一樣建立一個新檔案。
建立檔案hello後,在其中定義以下內容:
#!/bin/bash # Print Hello TutorialsPoint echo hello TutorialsPoint exit 0
讓我們瞭解此指令碼的作用:
#!/bin/bash
#! 告訴系統使用哪個直譯器來執行指令碼。在本例中,我們使用/bin/bash,這意味著我們希望在 Bash 中執行指令碼。不需要新增此行,但這是一個好習慣。如果沒有它,指令碼仍然可以正常工作,但如果在 Bash 以外的其他 shell 中執行指令碼,我們可能會遇到一些問題。
在shebang之後是一行註釋:
# Print Hello TutorialsPoint
註釋以符號#開頭。註釋不會被執行,只是讓讀者瞭解指令碼在做什麼或其各個行在做什麼。
您可能會注意到shebang 也以#開頭。但是,由於這是第一行,並且符號後有一個感嘆號,因此係統將第一行視為 shebang,而不是註釋。
在註釋行之後,我們有列印訊息的實際程式碼:
echo hello TutorialsPoint
這些行中的第一行使用 echo 命令在控制檯上顯示訊息“hello TutorialsPoint”。
如何執行 Shell 指令碼
有幾種方法可以執行 shell 指令碼:
- 使指令碼可執行並將其作為常規程式執行。
- 將指令碼作為 bash 程式的引數執行。
讓我們採用第一種方法並將我們的指令碼 hello 作為可執行應用程式執行:
chmod +x hello
chmod +x命令將檔案模式從簡單檔案更改為可執行檔案。
最後一步是執行指令碼,可以這樣完成:
./hello
並且最終結果將是:
在第二種方法中,我們將指令碼傳遞給 Bash:
bash hello
這將輸出相同的結果。
結論
Bash 指令碼或shell 指令碼是一種我們可以學習與系統互動的指令碼語言。它為我們提供了一種更強大的方法來自動化任務。如果您想成為一名 Linux 管理員或 Linux 專家,命令列絕對應該是您學習的第一件事。