如何在Mac終端上運行外殼或.sh腳本

如果您在這裡,您可能有興趣學習在Mac上使用Shell腳本。無論您是完全不熟悉外殼,還是由於使用UNIX或Linux操作系統的經驗而熟悉Shell,這都是您的理想選擇!

通常,本文將不涵蓋如何編寫Shell或.SH腳本,但是我們將為您提供一些有關如何編寫它們以及尋找內容的提示。

關鍵要點

  • Shell或.SH腳本是包含一個或多個終端命令的純文本文件,以執行否則使用終端的任務。
  • 在Macos Catalina之前,默認腳本是Bash腳本。但是Macos Catalina將此默認設置更改為ZSH。這是重要的信息,但不限制您使用shell
  • 儘管Mac確實有一個文本編輯器要編輯.SH文件,但是對於更高級的腳本或初學者來說,有一些免費的替代方案。
  • 一旦創建了shell或.sh文件,這是一個簡單的3個命令來運行它!

什麼是shell或.sh腳本?

首先,如果您不太熟悉shell(或.sh)腳本,則它們是包含一個或多個Unix命令(或終端命令)的純文本文件,可用於執行您否則您將使用終端執行的命令。

文件之後是.sh後綴。由於MACOS基於UNIX操作系統,因此這使得在Mac上編寫和執行Shell腳本相對容易。

在Macos Catalina之前,MacOS將Bash腳本用作默認值,但Catalina將默認值更改為ZSH。但是,這只是默認值,並且不會更改終端的其他選項。您仍然可以使用最適合的腳本。

shell腳本或.sh文件通常寫在文本編輯中。文本編輯應用程序是Mac的默認純文本編輯器,但不一定是腳本創建的最佳方法,尤其是如果您不熟悉腳本寫作。

如果您打算更定期地為Mac編寫腳本,或者只是啟動並嘗試編寫一個更高級的腳本,則可能值得查找和下載其他編輯器。還有一些特定的劇本應用程序,非常適合初學者或高級腳本!

在Mac上創建Shell文件的最簡單方法是使用終端命令:

Cd YourFolder
touch CreateFileName.sh” 

此外,Shell腳本始終以二進制路徑開頭,以允許您的終端識別它是一個shell文件。

它始於所謂的希邦。這是主題標籤和感嘆號。然後,它給出了代表二進制的垃圾箱,而sh則為外殼。

因此看起來像這樣:#! /bin/sh

出於我們的目的,我將使用以下外殼文件。這位於我的文檔文件夾中。

運行外殼或.sh腳本

因此,使用Mac上的終端應用程序,我們將使用一系列命令來運行Shell文件。他們看起來像這樣:

第一個命令是使用Shell腳本將您的終端帶到文件夾。如上所述,我的文檔文件夾中。

cd YourFilePath

下一個命令更改文件的權限以允許您運行它。

chmod 755 YourFileName.sh

最後,該命令允許您運行文件。

sh YourFileName.sh

其他運行命令

還有一些額外的命令稍微複雜一些,並允許您以不同的方式或出於不同的原因運行文件。以下所有命令及其輸出在此處顯示:

如果您的.SH文件需要特殊權限,請使用命令:

sudo sh YourFileName.sh

您可以使用命令,而不是SH./ yourfilename.sh。這使您的Mac知道可以讀取Shebang並使用正確的腳本類型。

最後,您可以使用以下命令:

  • sh -x您的fileName。sh用於調試模式
  • sh -V您的fileName。sh對於詳細模式
  • sh -n您的fileName。sh檢查語法

最後一句話

信不信由你,在Mac上運行一個外殼或.SH腳本與我們討論的3個命令一樣簡單!儘管還有其他幾種運行腳本的方法(有些討論了),但這些命令非常容易記住和執行。

如果您熟悉UNIX或Linux,則使用MacOS上的Shell腳本可以很容易地拾取。這也是新的外殼用戶學習的好方法!