天天看點

8、Linux Shell 筆記

1、從變量讀取清單<?xml:namespace prefix = o />

List = "apple tree book"

List = $List" hello"

則此時,List 為"apple tree book hello"這是一種将文本添加到一個存在的,存儲在一個變量中的文本字元串的常用方法。

2、改變字段分隔符

預設是:空格 制表符 換行符

IFS = $'\n'

另外一種安全的做法

IFS.OLD = $IFS

IFS = $'\n'

IFS = $IFS.OLD //恢複

指定多個:

IFS = $'\n';" //用\n ; "來做分隔符。

3、C式for 指令

For (( variable assigment; condition; iteration process))

Do

...

Done

有幾項不同于C中:

變量的指派可以包含空格

條件中的變量不以美元符号做字首

疊代處理式不使用expr指令

For (( i =1; i <= 10; i++))

  Echo "number is $i"

4、while可以定義多條test指令,隻有最後一條測試指令的退出狀态是用來決定循環是如何停止的。

<a href="http://www.cnblogs.com/mydomain/archive/2010/09/24/1833910.html">http://www.cnblogs.com/mydomain/archive/2010/09/24/1833910.html</a>

5、處理循環的輸出

可以如下處理:

Done &gt; output.txt

6、在第9個變量之後,必須使用大括号将變量括起來,如${10}。

7、讀取程式名稱

basename 傳回程式名稱,而不包括路徑。

name = 'basename $0'

8、使用${!#}可以得到最後一個指令行參數值。

9、$parm取變量

10、變量$@将指令行中提供的所有參數作為一個字元串中的多少單詞處理,允許疊代;而變量$*将指令行中提供的所有參數作為一個單詞處理。

11、取複雜變量的值:$[$count + 1]。

12、Getopt指令:對指令行參數進行組織,以易于解析。

13、擷取使用者輸入

1)read -p | t | n1

count = 1

cat test | while read line //從test檔案中讀入資料,顯示,到完結

Echo "$count: $line"

Count = $[ $count + 1]

14、常見Linux指令行選項

8、Linux Shell 筆記

繼續閱讀