bash shell智齒一種for迴圈,它看起來跟c語言風格的for迴圈類似,但有一些細微的不同,其中還包括了一些讓shell指令碼程式設計師困惑的東西,以下是bash中c語言風格的for迴圈的基本格式。
在c語言中,for迴圈通常定義ige變數,然後這個變數會在每次迭代時自動改變。
for (( variable assignment ; condition ; iteraation process ))
c語言風格的for迴圈的格式會讓bash shell 指令碼程式設計師摸不著頭腦,因為它使用了c語言風格的變數引用方式而不是shell風格的變數引用方式。 c語言風格的for命令看起來如下:
for (( a = 1; a < 10; a++))
例子1如下:
#!/bin/bash
#testing the c-style for loop
for (( i=1; i<10; i++ ))
do echo "the next number is $i"
done
for迴圈通過定義好的變數(本例中是變數i)來迭代執行這些命令。 在每次迭代中,$i變數包含了for迴圈中賦予的值。在每次迭代後,迴圈的迭代過程會作用在變數上,在本例子中,變數增一。
列子二如下:(使用多個變數)
c語言風格的for命令也允許為迭代使用多個變數。迴圈會單獨處理每個變數,你可以為每個變數每個變數定義不同的迭代過程,儘管可以使用多個變數,但你只能在for迴圈中定義一種條件。
**如下:
#!/bin/bash
#mutiple variable
for (( a=1, b=10; a<=10; a++, b-- ))
do echo "$a -$b"
done
變數a和變數b分別用不同的值來初始化並且定義了不同的迭代過程。迴圈的每次迭代在增加變數a的同時減小了變數b。 C語言 注釋轉換(C風格 C 風格)
其中有一些檔案操作函式,不懂的可以看這篇部落格 首先,我們要知道乙個檔案中至少有五種狀態,我們用狀態圖表示 解讀 我們從 不是注釋 的狀態開始,請看下圖 有以下幾種情況需要注意 轉變成 轉變成 判斷是否為換行,如果換行需要輸入 轉變成 如果準備出注釋的時候,遇到 先保留看下乙個字元是不是 如果是 在...
c語言的程式設計風格
c語言的程式設計風格 第一章 縮排格式 tab是8個字元,於是縮排也是8個字元.有很多怪異的風格,他們將縮排格式定義為4個字元 設定為2個字元 的深度,這就象試圖將pi定義為3一樣讓人難以接受.理由是 縮排的大小是為了清楚的定義乙個塊的開始和結束.特別是當你已經在計算機前面呆了20多個小時了以後,你...
c語言的程式設計風格
c語言的程式設計風格 第一章 縮排格式 tab是8個字元,於是縮排也是8個字元.有很多怪異的風格,他們將縮排格式定義為4個字元 設定為2個字元 的深度,這就象試圖將pi定義為3一樣讓人難以接受.理由是 縮排的大小是為了清楚的定義乙個塊的開始和結束.特別是當你已經在計算機前面呆了20多個小時了以後,你...