build.sh解讀


1. #!/bin/sh

程序必須以#!/bin/sh開始,必須放在文件的第一行。

符號#!用來告訴系統它后面的參數是用來執行該文件的程序。在這個例子中我們使用/bin/sh來執行程序。當編寫腳本完成時,如果要執行該腳本,還必須使其可執行。要使編寫腳本可執行:

編譯 chmod +x filename 這樣才能用./filename 來運行, chmod +x  filename用來將文本文件轉變為可執行文件。

2. export ROOT_DIR=$PWD

Linux export 命令用於設置或顯示環境變量。在 shell 中執行程序時,shell 會提供一組環境變量。export 可新增,修改或刪除環境變量,供后續執行的程序使用。export 的效力僅限於該次登陸操作。

Linux pwd(英文全拼:print work directory) 命令用於顯示工作目錄,執行 pwd 指令可立刻得知您目前所在的工作目錄的絕對路徑名稱。

$ 符號在Linux系統里面用於獲取一個變量的值,$PWD 獲得當前工作目錄路徑的字符串值。

 

3. echo "Usage:"

Shell 的 echo 指令與 PHP 的 echo 指令類似,都是用於字符串的輸出。命令格式:echo string

 

4. [ "$#" -lt 1 ] 

當調用該腳本表示沒有提供參數時該如何處理。

 

5.while getopts ":a:bc:" opt

getopts的使用

語法格式:getopts [option[:]] [DESCPRITION] VARIABLE

option:表示為某個腳本可以使用的選項

":":如果某個選項(option)后面出現了冒號(":"),則表示這個選項后面可以接參數(即一段描述信息DESCPRITION)

VARIABLE:表示將某個選項保存在變量VARIABLE中

getopts是linux系統中的一個內置變量,一般用在循環中。每當執行循環是,getopts都會檢查下一個命令選項,如果這些選項出現在option中,則表示是合法選項,否則不是合法選項。並將這些合法選項保存在VARIABLE這個變量中。

getopts還包含兩個內置變量,及OPTARG和OPTIND

OPTARG就是將選項后面的參數(或者描述信息DESCPRITION)保存在這個變量當中。

OPTIND:這個表示命令行的下一個選項或參數的索引(文件名不算選項或參數)

while getopts ":a:bc:" opt
do
    case $opt in
        a)
        echo $OPTARG $OPTIND;;
        b)
        echo "b $OPTIND";;
        c)
        echo "c $OPTIND";;
        ?)
        echo "error"
        exit 1;;
    esac
done
while getopts ":a:bc:" opt #第一個冒號表示忽略錯誤;字符后面的冒號表示該選項必須有自己的參數。
 

 


免責聲明!

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



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