新聞中心

        linux shell 腳本入門

        作者: 時(shí)間:2007-04-24 來(lái)源:網(wǎng)絡(luò) 收藏

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

        2.case

        case :表達(dá)式可以用來(lái)匹配一個(gè)給定的字符串,而不是數(shù)字。
        case ... in
        ...) do something here ;;
        esac
        讓我們看一個(gè)例子。 file命令可以辨別出一個(gè)給定文件的文件類型,比如:
        file lf.gz
        這將返回:
        lf.gz: gzip compressed data, deflated, original filename,
        last modified: Mon Aug 27 23:09:18 2001, os: Unix
        我們利用這一點(diǎn)寫了一個(gè)叫做smartzip的腳本,該腳本可以自動(dòng)解壓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
        您可能注意到我們?cè)谶@里使用了一個(gè)特殊的變量$1。該變量包含了傳遞給該程序的第一個(gè)參數(shù)值。
        也就是說(shuō),當(dāng)我們運(yùn)行:
        smartzip articles.zip
        $1 就是字符串 articles.zip

        3. selsect
        select 表達(dá)式是一種bash的擴(kuò)展應(yīng)用,尤其擅長(zhǎng)于交互式使用。用戶可以從一組不同的值中進(jìn)行選擇。
        select var in ... ; do
        break
        done
        .... now $var can be used ....
        下面是一個(gè)例子:
        #!/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
        下面是該腳本運(yùn)行的結(jié)果:
        What is your favourite OS?
        1) Linux
        2) Gnu Hurd
        3) Free BSD
        4) Other
        #? 1
        You have selected Linux



        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 岫岩| 兴业县| 灯塔市| 宝山区| 林芝县| 广灵县| 唐河县| 定日县| 东乡| 香河县| 嘉禾县| 金阳县| 德阳市| 苍山县| 灯塔市| 东光县| 苗栗县| 黔西县| 吉安市| 正定县| 客服| 田阳县| 黄骅市| 紫金县| 时尚| 新龙县| 同江市| 南充市| 抚宁县| 连平县| 永宁县| 大洼县| 株洲市| 思茅市| 武强县| 珲春市| 新密市| 黑水县| 马山县| 成武县| 郯城县|