新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > linux shell 腳本入門

        linux shell 腳本入門

        作者: 時間:2007-04-24 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/258223.htm

        2.case

        case :表達式可以用來匹配一個給定的字符串,而不是數字。
        case ... in
        ...) do something here ;;
        esac
        讓我們看一個例子。 file命令可以辨別出一個給定文件的文件類型,比如:
        file lf.gz
        這將返回:
        lf.gz: gzip compressed data, deflated, original filename,
        last modified: Mon Aug 27 23:09:18 2001, os: Unix
        我們利用這一點寫了一個叫做smartzip的腳本,該腳本可以自動解壓bzip2, gzip 和zip 類型的壓縮文件:
        #!/bin/sh
        ftype=`file $1`
        case $ftype in
        $1: Zip archive*)
        unzip $1 ;;
        $1: gzip compressed*)
        gunzip $1 ;;
        $1: bzip2 compressed*)
        bunzip2 $1 ;;
        *) echo File $1 can not be uncompressed with smartzip;;
        esac
        您可能注意到我們在這里使用了一個特殊的變量$1。該變量包含了傳遞給該程序的第一個參數值。
        也就是說,當我們運行:
        smartzip articles.zip
        $1 就是字符串 articles.zip

        3. selsect
        select 表達式是一種bash的擴展應用,尤其擅長于交互式使用。用戶可以從一組不同的值中進行選擇。
        select var in ... ; do
        break
        done
        .... now $var can be used ....
        下面是一個例子:
        #!/bin/sh
        echo What is your favourite OS?
        select var in Linux Gnu Hurd Free BSD Other; do
        break
        done
        echo You have selected $var
        下面是該腳本運行的結果:
        What is your favourite OS?
        1) Linux
        2) Gnu Hurd
        3) Free BSD
        4) Other
        #? 1
        You have selected Linux



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 驻马店市| 安平县| 龙川县| 钟山县| 方山县| 岱山县| 涿鹿县| 兰西县| 巢湖市| 张家港市| 霍林郭勒市| 沐川县| 内黄县| 宣武区| 荔浦县| 鄂尔多斯市| 彰化县| 洪江市| 海林市| 清水县| 邳州市| 遵义县| 彰化县| 高平市| 南昌县| 日照市| 曲松县| 佛教| 北票市| 罗山县| 德保县| 县级市| 日土县| 通渭县| 阿合奇县| 布尔津县| 元朗区| 安阳县| 东乌珠穆沁旗| 灌云县| 邯郸县|