最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

shell腳本編程之if語句學(xué)習(xí)筆記

 更新時間:2014年09月11日 10:51:26   投稿:junjie  
這篇文章主要介紹了shell腳本編程之if語句學(xué)習(xí)筆記,本文先是給出了程序代碼,然后詳細的分解了第句代碼的作用,需要的朋友可以參考下

我不是研究linux下的東西的,所以這里只對shell腳本的用法做一個介紹,把我自己在使用過程中出現(xiàn)的問題記錄下來,同時也是寫下一些shell腳本語法的規(guī)則,方便以后查看。先來學(xué)習(xí)一下條件語句if的用法,通過這一個簡單的語法來說明一下shell腳本編程時候的東西。

復(fù)制代碼 代碼如下:

#!/bin/sh
echo "please input text1"
read text1
echo "please input text2"
read text2
#判斷字符串等或者是不等只有一個等號
if test $text1 = $text2
then
echo "text1 equals text2"
else
echo "text1 not equals text2"
fi

#判斷字符串是否為空,這里的判斷記得在$text1倆邊加上雙引號
if [ -z "$text1" ]
then
echo "text1 is null"
fi
if [ -n "$text1" ];then
echo "text1 is not null"
fi

#算術(shù)比較 text1和text2中的內(nèi)容只能是數(shù)字
if [ "$text1" -eq "$text2" ];then
echo "equal"
elif [ "$text1" -gt "$text2" ];then
echo "great"
elif [ "$text1" -le "$text2" ];then
echo "little and equals"
fi

echo "input a file or not file"
read file
#判斷是文件還是目錄
if [ -d $file ];then
echo "$file is a directory"
elif [ -f $file ];then
echo "$file is a file"
fi
#判斷文件的大小是否為空
if [ -s $file ];then
#echo -n是為了去掉換行符
echo -n "$file'size is not null"
fi

#判斷文件的讀寫權(quán)限
if [ -f "$file" ];then
 if [ -r "$file" ];then
 echo "read"
 fi
 if [ -w "$file" ];then
 echo "write"
 fi
 if [ -x "$file" ];then
 echo "exe"
 fi
fi

exit 0

我們一點點的來分析一下這個程序,第一行是一個特殊的注釋語句,在linux的shell下,使用#作為注釋,所以如果你想注釋東西就要以#開頭,第一行的注釋語句是告訴shell執(zhí)行這個shell腳本的時候使用的是/bin/sh這個目錄下的shell。接著使用echo命令來輸出一行語句,echo后邊的字符串最好用雙引號引起來,以后凡是字符串最好都用雙引號引起來,這可以避免一些很難查找到的bug,echo后邊如何加上-n選項,則代表語句輸出以后是不換行的。接著是read命令,這個命令的作用是讀取輸入到變量text1中,在shell腳本中,我們使用變量的時候不需要預(yù)先定義,用的時候直接這樣用就可以了。接下來就說到了我們本篇博客要說明的if條件語句了,這個if的語法是if..then..elif..then..else..fi具體的看看代碼,代碼中已經(jīng)有了體現(xiàn),在c語言中我們使用if來判斷的時候都是將判斷語句寫在括號中的,這里的判斷是使用test命令來判斷,你把它理解為在小括號中一樣就可以了,test的判斷可以是對字符串的判斷,對數(shù)值的判斷,對文件目錄等的判斷,這個test可以用[符號來代替,這就是在程序的后邊沒有使用test而是使用[號的原因,[的判斷最后要以]號結(jié)尾,判斷語句寫在中括號中,因為[代表的就是test,所以[和后邊的判斷條件有空格。接下來說回來test可以判斷的類型,代碼中顯示對字符串的判斷,注意我們判斷text1和text2相等的時候用的是一個等號,大家c語言習(xí)慣了不要忘記是一個等號,對變量的取值采用的是在變量前邊加了$符號,這樣就獲得了變量的值了。同時也要加上雙引號,你不加也許發(fā)現(xiàn)不了錯誤,但是如果輸入是空,也就是直接敲下了回車鍵,這個時候判斷就成了if test = text2,test后邊沒有東西當然不對了,如果加上雙引號是這樣的if test "" = text2,這樣就不會出錯了。其他的關(guān)于一些選項,例如-z、-n、-gt、-f、-r等等這些東西每一個都是英文單詞的簡寫,很簡單略過!接下來運行shell程序,使用chmod +x命令賦予可執(zhí)行的權(quán)限,然后運行,一切ok!

相關(guān)文章

  • linux lsof命令詳解及實例

    linux lsof命令詳解及實例

    這篇文章主要介紹了linux lsof命令詳解的相關(guān)資料,lsof是一個列出當前系統(tǒng)打開文件的工具,這里詳細介紹如何使用,需要的朋友可以參考下
    2017-03-03
  • linux shell實現(xiàn)判斷輸入的數(shù)字是否為合理的浮點數(shù)

    linux shell實現(xiàn)判斷輸入的數(shù)字是否為合理的浮點數(shù)

    這篇文章主要介紹了linux shell實現(xiàn)判斷輸入的數(shù)字是否為合理的浮點數(shù),需要的朋友可以參考下
    2016-08-08
  • Linux查看當前使用的shell的方法總結(jié)

    Linux查看當前使用的shell的方法總結(jié)

    這篇文章總結(jié)了在Linux和Unix系統(tǒng)中查看當前使用的shell的幾種方法,包括使用$0環(huán)境變量、$SHELL環(huán)境變量、ps命令、echo命令、readlink命令和grep命令,并通過代碼示例講解的非常詳細,需要的朋友可以參考下
    2025-03-03
  • Bash腳本中特殊變量$0的使用

    Bash腳本中特殊變量$0的使用

    本文主要介紹了Bash腳本中特殊變量$0的使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • Linux命令定位與查找之which、whereis和find的用法示例詳解

    Linux命令定位與查找之which、whereis和find的用法示例詳解

    Linux命令的定位與查找是我們?nèi)粘9ぷ髦斜貍涞募寄?掌握which、whereis和find這三個命令,可以幫助我們更加高效地進行文件搜索和定位工作,這篇文章主要介紹了Linux命令定位與查找:which、whereis和find的用法詳解,需要的朋友可以參考下
    2023-10-10
  • sed找到關(guān)鍵字所在行并將其前面的第一個字符刪除的命令

    sed找到關(guān)鍵字所在行并將其前面的第一個字符刪除的命令

    sed找到關(guān)鍵字所在行并將其前面的第一個字符刪除的命令,需要的朋友可以參考下
    2013-02-02
  • Linux Shell中三種引號的用法及區(qū)別

    Linux Shell中三種引號的用法及區(qū)別

    Linux Shell中有三種引號,分別為雙引號(" ")、單引號(' ')以及反引號(` `)。那么這三種引號有什么區(qū)別呢?下面腳本之家小編給大家介紹下用法及區(qū)別,需要的的朋友參考下
    2017-03-03
  • Linux基礎(chǔ)命令日常積累

    Linux基礎(chǔ)命令日常積累

    Linux命令雖然用處很多,用過這么多次但是對其步驟、命令還是不記得,每次還是要到處找資料,下面小編把本次linux生產(chǎn)環(huán)境搭建分享在腳本之家平臺,供大家參考
    2015-10-10
  • Shell函數(shù)返回值方式

    Shell函數(shù)返回值方式

    本文主要介紹了Shell函數(shù)返回值方式,主要介紹了兩種返回方式,分別介紹了場景的使用和區(qū)別,具有一定的參考價值,感興趣的可以了解一下
    2022-08-08
  • linux shell流程控制語句實例講解(if、for、while、case語句實例)

    linux shell流程控制語句實例講解(if、for、while、case語句實例)

    linux shell有一套自己的流程控制語句,其中包括條件語句(if),循環(huán)語句(for,while),選擇語句(case)。下面我將通過例子介紹下,各個語句使用方法
    2014-04-04

最新評論

连平县| 凉山| 阳信县| 库伦旗| 建始县| 江孜县| 灵璧县| 新昌县| 松溪县| 绩溪县| 新民市| 肥西县| 海口市| 道真| 察雅县| 南木林县| 平乡县| 商南县| 台东市| 常宁市| 镇平县| 论坛| 永福县| 七台河市| 青铜峡市| 陆丰市| 镇赉县| 西充县| 松溪县| 道孚县| 博乐市| 扎鲁特旗| 揭东县| 加查县| 芮城县| 舒城县| 祁阳县| 都江堰市| 乌兰察布市| 乌海市| 牡丹江市|