Shell Script 入門教程


和 Shell 的區別

Shell 是一個用 C 語言編寫的程序,它是用戶使用 Linux 的橋梁。

Shell 即是一種命令語言,又是一種程序設計語言。

Shell 是指一種應用程序,這個應用程序提供了一些命令,用戶可以通過這些命令去訪問操作系統內核的服務。

Ken Thompson 的 sh 是第一種 Unix Shell,Windows Explorer 是一個典型的 Shell。

Shell 在線工具

Shell 腳本,是一種為 Shell 編寫的腳本程序,類似 Windows 的 bat 腳本,區別在於 bat 是用於操作 Windows 操作系統,而 Shell 腳本用於操作 Linux 系統。

腳本的編程環境

  • 文本編輯器
  • 能解釋執行的腳本解釋器
    常見的解釋器有:
    Bourne Shell (/usr/bin/sh 或 /bin/sh)
    Bourne Again Shell (/bin/bash)
    C Shell (/usr/bin/csh)
    K Shell (/usr/bin/ksh)
    Shell for Root (/sbin/sh)
    ……

一般使用 Bash,也就是 Bourne Again Shell,Bash 也是大多數 Linux 系統默認的 Shell。

Shell Script 開頭的 #! 告訴系統解釋此腳本文件的 Shell 程序路徑,例如下面的 Shell Scirpt 執行路徑為 /bin/bash

#!/bin/bash

第一個 Shell Script

打開文本編輯器(可以使用 vi/vim 或是 vs code 來編寫),新建一個文件 test.sh,擴展名為 sh (sh 代表 shell),擴展名並不影響腳本執行。

#!/bin/bash echo "Hello World !"

#! 是一個約定的標記,它告訴系統這個腳本需要什么解釋器來執行,即使用哪一種 Shell。
echo 命令用於向窗口輸出文本。

運行 Shell Script 有兩種方法:

1. 作為可執行程序

將上面的代碼保存為 test.sh,並 cd 到相應目錄:

chmod +x ./test.sh ./test.sh

注意,一定要寫成 ./test.sh,而不是 test.sh,運行其它二進制的程序也一樣,直接寫 test.sh,linux 系統會去 PATH 里尋找有沒有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的當前目錄通常不在 PATH 里,所以寫成 test.sh 是會找不到命令的,要用 ./test.sh 告訴系統說,就在當前目錄找。

2. 作為解釋器參數

/bin/sh test.sh

這種方式運行的腳本,不需要在腳本中的第一行指定解釋器信息

運行效果如下圖:

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM