簡單語法

判斷

最簡單的判斷邏輯是:

if [ condition1 ]; then
   statement1
elif [ condition2 ]; then
  statement2
else
  statement3
fi
# 或者用test
if test condition1 ; then
   statement1
fi

注意:condition兩邊與[]之間必須至少有一個空格

判斷條件

shell中判斷條件不同于其他語言中的<,>,==,<=,>=那么直接犬庇,常見的有下列幾種:

-eq  等于(==)
-ne  不等于(!=)
-gt  大于(\>)
-lt  小于(\<)
-le  小于等于
-ge  大于等于
-z  空串
-n  非空串
==  兩個字符相等
!=  兩個字符不等

組合判斷

-a 且
-o 或

特殊用法[[ ... ]]

字符串比較時可以把右邊的作為一個模式,而不僅僅是一個字符串,比如[[ hello == hell? ]]結果為真&&、||、<和> 操作符能夠正常存在于[[ ]]條件判斷結構中,但是如果出現在[ ]結構中的話悟衩,會報錯。比如可以直接使用if [[ $a != 1 && $a <= 5 ]]栓拜,如果不使用雙括號, 則為if [ $a -ne 1] && [ $a -le 5 ]或者if [ $a -ne 1 -a $a -le 5 ]

文件的判斷

-f   判斷后面是否為一個文件
-d   判斷后面是否為一個目錄
-e   判斷后面對應的文件是否存在
-s   判斷文件是否存在且不為空

switch case

case "$Variable" in
  # 列出需要匹配的字符串
  0) echo "There is a zero.";;
  1) echo "There is a one.";;
  *) echo "It is not null.";;
esac

循環(huán)

for 循環(huán)

# {1..3} == `seq 1 3`
for Variable in {1..3}
do
  echo "$Variable"
done

或傳統的"for循環(huán)"座泳,但需要加兩層括號(兩層的小括號內可以寫C語言中的語句):

for ((a=1; a <= 3; a++))
do
  echo $a
done

在其他命令的結果上執(zhí)行for循環(huán):

for Output in $(ls)
do
  cat "$Output"
done

while 循環(huán)

while [ condition ]
do
  echo "loop body here..."
  break
done

命令行

$#   命令行參數個數
$0   當前腳本名
$n   第n個參數值,n可取1,2,3...
$@   所有命令行參數
$?   上一個命令的返回值
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末幕与,一起剝皮案震驚了整個濱河市挑势,隨后出現的幾起案子,更是在濱河造成了極大的恐慌啦鸣,老刑警劉巖潮饱,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異诫给,居然都是意外死亡香拉,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進店門中狂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來凫碌,“玉大人,你說我怎么就攤上這事胃榕∈⑾眨” “怎么了?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵勋又,是天一觀的道長苦掘。 經常有香客問我,道長楔壤,這世上最難降的妖魔是什么鸟蜡? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮挺邀,結果婚禮上,老公的妹妹穿的比我還像新娘跳座。我一直安慰自己端铛,他們只是感情好,可當我...
    茶點故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布疲眷。 她就那樣靜靜地躺著禾蚕,像睡著了一般。 火紅的嫁衣襯著肌膚如雪狂丝。 梳的紋絲不亂的頭發(fā)上换淆,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天哗总,我揣著相機與錄音,去河邊找鬼倍试。 笑死讯屈,一個胖子當著我的面吹牛,可吹牛的內容都是我干的县习。 我是一名探鬼主播涮母,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼躁愿!你這毒婦竟也來了叛本?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤彤钟,失蹤者是張志新(化名)和其女友劉穎来候,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體逸雹,經...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡营搅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了峡眶。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片剧防。...
    茶點故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖辫樱,靈堂內的尸體忽然破棺而出峭拘,到底是詐尸還是另有隱情,我是刑警寧澤狮暑,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布鸡挠,位于F島的核電站,受9級特大地震影響搬男,放射性物質發(fā)生泄漏拣展。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一缔逛、第九天 我趴在偏房一處隱蔽的房頂上張望备埃。 院中可真熱鬧,春花似錦褐奴、人聲如沸按脚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽辅搬。三九已至,卻和暖如春脖旱,著一層夾襖步出監(jiān)牢的瞬間堪遂,已是汗流浹背介蛉。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留溶褪,地道東北人币旧。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像竿滨,于是被迫代替她去往敵國和親佳恬。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內容

  • TWIG 模板的主要特征于游。 高效:Twig將模板編譯成了優(yōu)化了的PHP文件毁葱,與原生的PHP代碼比較而言,性能損耗非...
    Fairyin閱讀 8,500評論 1 3
  • 1.在swift中字符和字符串都是用""括起來贰剥,若是需要區(qū)分它們的類型倾剿,字符必須制定Charater 2.字符串的...
    傻傻小蘿卜閱讀 283評論 0 0
  • 兩個人的相遇是一場緣分 我們穿越千上萬水 躲過各種意外 然后相遇 在我們還不明白珍惜的時候 請讓我們來數算一下 我...
    生命溫度加1閱讀 288評論 0 0
  • 美國的一號公路是沿太平洋海濱修建的一條公路,由于它自身的地理環(huán)境蚌成,一側是一望無際的太平洋前痘,碧波萬頃;另一側是國家公...
    松鼠的日子閱讀 234評論 0 0
  • 好朋友一定要經常在一起吃喝玩樂嗎?不在一起玩耍感情會變淡嗎瓶盛? 我覺得不一定最欠。 只是經常在一起吃喝玩樂會有更多的機會...
    梁老虎閱讀 2,831評論 0 0