shell腳本學習筆記

以項目中的JS綁定腳本爲例來學習。

# 註釋標誌

>輸出到文件

>>追加到文件

<<表示後面的是輸入的結束符

cat>err.txt<<EOF

> aaaa

> 12321

> EOF


實際是將

aaaa

12321

輸入到err.txt


getopts用於對命令行參數做處理,即調用腳本時後面帶的-n之類的參數。語法如下:

getopts 選項字符串 變量

case語句

case [目標] in

選項1);;

選項2);;必須以雙分號結束

esac


while [命令] do

…………

…………

done

echo 打印


$變量 表示獲取變量的值,${}表示花括號中是一個變量


wc 即wordCount命令,用於統計字數,-l表示統計行數


選項如果不帶參數可以寫在一起,例如 -l -t 可以寫成-lt

給變量賦值時,如果值中含有空格需要使用雙引號。


grep 文本匹配,使用正則表達式;egrep是它的擴展。

fgrep匹配固定字符串


basename 顯示一個文件路徑中的文件名

pwd 查看當前目錄的完整路徑


DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"  獲取當前腳本的所在路徑

其中BASH_SOURCE[0]指腳本所在路徑與當前路徑的相對路徑,dirname取得目錄

cd + 目錄的命令切換到腳本所在目錄,然後用pwd取得該目錄的完整路徑

shell命令中的&&表示 前一個命令返回成功之後,後一個命令才執行。

source命令,也稱點命令,指把另一個shell文件裏的命令全部加載進父文件,即其中的變量等變化全部在父文件生效。

-z +字符串 :如果字符串爲空則返回真值

數組: array[*]或者array[@]表示整個數組,#array 表示獲取數組的長度

-lt 小於 less than

let和(())都可用於變量賦值

${var##*string} 刪掉var 中最後一個string及其左邊的字符串


$0 取得腳本文件名


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章