<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    您好朋友,感謝您關注xiaosilent,我在blogjava的博客已經停止更新,請訪問http://kuan.fm了解我的最新情況,謝謝!
    隨筆-82  評論-133  文章-0  trackbacks-0
    還是自己寫的小小腳本,用來掛載iso文件、卸載卷 的小小小腳本。 就算是0.3版了吧~~~~

    #!/bin/bash
    ##################################################################################
    #??
    #??? GMountISO 一個掛載在GNOME環境下掛載iso文件的小小小腳本
    #?????作者:xiaosilent
    #?? ? Email:xiaosilent@gmail.com
    #?????版本:
    0.3
    #?????依賴:zenity
    #?????用法:
    #????????
    1,圖形界面下,直接執行腳本,也可復制到~/gnome2/nautilus-scripts/下,這樣將在nautilus的上下文菜單中出現script項。
    #????????
    2.1終端下,直接執行腳本,和圖形界面下一樣
    #????????
    2.2終端下,./mountiso?iso_path?mount_path?直接完成掛載
    #
    ##################################################################################



    ###################?定義變量?##########################################

    ISO_PATH
    =$1????????#iso文件路徑,從第一個參數里獲取
    MOUNTPOINT
    =$2????#掛載點,第二個參數

    CHOSED_FUNCTION
    =""????#功能選擇,掛載/卸載
    ISMOUNTED
    =""????#掛載點是否已經被占用



    ###################?一些功能模塊?#######################################

    ###功能選擇?掛載
    /卸載
    function?choosefunction(){
    ????CHOSED_FUNCTION
    =`zenity?--title="選擇要執行的操作"?--list?--width=100?--radiolist?--column="是否選中"?--column="操作類型"?TRUE?"掛載新卷"?FALSE?"卸載舊卷"`
    ????
    if?[?"$?"?-eq?"1"?]
    ????then
    ????????echo?
    "沒有選擇,直接退出"
    ????????exit?
    0
    ????fi
    }

    ###獲取ISO文件的路徑
    function?getISOPath(){
    ????
    if?[?"$ISO_PATH"?=?""?]??#命令行參數為空
    ????then
    ????????ISO_PATH
    =`zenity?--file-selection?--title?"選擇要掛載的ISO文件"?--filename="~"`????#彈出文件選擇對話框
    ????????
    if?[?"$ISO_PATH"?=?""?]????#從文件對話框"取消",給出提示信息,程序退出。
    ????????then
    ????????????zenity?
    --error?--title="錯誤信息"?--text="您沒有指定要掛載的ISO文件!"
    ????????????exit?
    1
    ????????fi
    ????fi
    ????
    if?[?`file?$ISO_PATH?|?grep?"ROM"?|?wc?-c`?-eq?"0"?]
    ????then
    ????????zenity?
    --error?--title="錯誤信息"?--text="讀取ISO文件出錯,請確認文件存在且是標準的ISO格式"
    ????????exit?
    1
    ????fi
    }


    ###獲取掛載點路徑
    function?getMountPoint(){
    ????
    if?[?"$MOUNTPOINT"?=?""?]????#沒有從命令行里制定掛載路徑
    ????then
    ????????MOUNTPOINT
    =`zenity?--file-selection?--directory?--title="請選擇ISO文件掛載目錄"???--filename="/media/iso"`
    ????????
    if?[?"$MOUNTPOINT"?=?""?]????#選擇了?"取消",給出提示信息,程序退出。
    ????????then
    ????????zenity?
    --error?--title="錯誤信息"?--text="您沒有指定掛載目錄"
    ????????exit?
    1
    ????????fi
    ????fi
    }

    ###檢測掛載點是否存在
    function?checkMountPoint_Exist(){
    ????
    if?[?!?-e?$MOUNTPOINT?]???#監測掛載點是否存在
    ????then?#掛載點?不存在
    ????????zenity?
    --error?--title="錯誤信息"?--text="掛載目錄$MOUNTPOINT不存在"
    ????????exit?
    1
    ????fi
    }

    ###檢測所指定的掛載點是否為目錄
    function?checkMountPoint_Directory(){
    ????
    if?[?!?-d?$MOUNTPOINT?]??#如果掛載點不是一個目錄
    ????then
    ????????enity?
    --error?--title="錯誤信息"?--text="掛載目錄$MOUNTPOINT不是目錄"
    ????????exit?
    1
    ????fi
    }

    ###檢測指定的掛載點是否已經被使用
    function?checkMountPoint_Mounted(){
    ????ISMOUNTED
    =`grep?$MOUNTPOINT?/etc/mtab?|?wc?-c`
    ????
    if?[?"$ISMOUNTED"?-gt?"0"?]
    ????then
    ????????ISMOUNTED
    ="TRUE"
    ????
    else
    ????????ISMOUNTED
    ="FALSE"
    ????fi
    }

    ###執行?卸載?的操作
    function?doUMount(){
    ????
    if?[?"$ISMOUNTED"?=?"TRUE"?]
    ????then
    ????????zenity?
    --warning?--title="是否選擇卸載"?--text="掛載目錄$MOUNTPOINT已經被占用,必須要先進行卸載。\n\n在確認卸載以前,請確認該卸載操作是安全的!\n\n卸載操作需要root權限,是否確定要進行卸載?"
    ????????
    if?[?$??-eq?1?]
    ????????then
    ????????????exit?
    0
    ????????
    else
    ????????????gksu?umount?$MOUNTPOINT??##gksu在圖形界面下切換到超級用戶。
    ????????????checkMountPoint_Mounted
    ????????????
    if?[?"$ISMOUNTED"?=?"TRUE"?]
    ????????????then
    ????????????????zenity?
    --error?--title="卸載失敗"?--text="設備忙,或其他原因,卸載失敗!"
    ????????????????exit?
    1
    ????????????
    else
    ????????????????
    if?[?"$CHOSED_FUNCTION"?=?"掛載新卷"?]
    ????????????????then
    ????????????????????zenity?
    --info?--title="成功卸載"?--text="原來的卷已經成功卸載,即將開始新卷的掛載操作!"
    ????????????????
    else
    ????????????????????zenity?
    --info?--title="成功卸載"?--text="原來的卷已經成功卸載!"
    ????????????????????exit?
    0
    ????????????????fi
    ????????????fi
    ????????fi
    ????fi
    }

    ###執行?掛載?的操作
    function?doMount(){
    ????gksu?
    "mount?$ISO_PATH?$MOUNTPOINT?-t?iso9660?-o?loop,utf8"????#gksu在圖形界面下切換到超級用戶。
    ????checkMountPoint_Mounted
    ????
    if?[?"$ISMOUNTED"?=?"TRUE"?]
    ????then
    ????????zenity?
    --info?--title="掛載成功"?--text="文件$ISO_PATH已經被成功掛載到$MOUNTPOINT!\n\n程序將自動啟動瀏覽器打開該目錄!"
    ????????nautilus?$MOUNTPOINT????#啟動瀏覽器瀏覽新掛載的卷
    ????
    else
    ????????zenity?
    --error?--title="掛載失敗"?--text="在把文件$ISO_PATH掛載到$MOUNTPOINT時失敗!"
    ????fi
    ????exit?
    0
    }



    ###################?主程序??####################

    choosefunction

    if?[?"$CHOSED_FUNCTION"?=?"卸載舊卷"?]????#######卸載舊卷
    then
    ????getMountPoint
    ????checkMountPoint_Exist
    ????checkMountPoint_Directory
    ????checkMountPoint_Mounted
    ????
    ????
    if?[?"$ISMOUNTED"?=?"TRUE"?]????????########是否需要卸載
    ????then
    ????????doUMount
    ????
    else
    ????????zenity?
    --info?--title="無須卸載"?--text="指定目錄并未曾掛載任何文件卷!"
    ????????exit?
    0
    ????fi
    else????##########掛載新卷
    ????getISOPath
    ????getMountPoint
    ????checkMountPoint_Exist
    ????checkMountPoint_Directory
    ????checkMountPoint_Mounted

    ????
    if?[?"$ISMOUNTED"?=?"TRUE"?]????########是否需要卸載
    ????then
    ????????doUMount
    ????fi

    ????doMount
    ????
    fi

    exit?
    0

    暫時還只實現了這么點功能,不過,目前暫時夠本人用了,所以,暫時,這個腳本就是這樣了。

    剛才,搜索了一下mountiso,出來一個kde下的東東,所以,我這個mountiso就不能再存在了,現在換成 GMountISO。
    posted on 2006-12-03 10:54 xiaosilent 閱讀(389) 評論(0)  編輯  收藏 所屬分類: Linux相關
    主站蜘蛛池模板: 一级毛片在播放免费| 免费精品一区二区三区第35| 亚洲国产午夜福利在线播放| 怡红院免费的全部视频| 亚洲无圣光一区二区| 国产91久久久久久久免费| 免费观看在线禁片| 亚洲高清乱码午夜电影网| 国产AV无码专区亚洲A∨毛片| 久久久久久久久免费看无码| sss在线观看免费高清| 亚洲综合网美国十次| 亚洲福利视频一区二区| 99精品免费观看| 日韩亚洲人成在线综合| 亚洲人成网址在线观看| 亚洲AV伊人久久青青草原 | 免费一级全黄少妇性色生活片| 亚洲乱码中文字幕久久孕妇黑人| 欧洲乱码伦视频免费| 黄色网页在线免费观看| 亚洲高清有码中文字| 亚洲精品成人网站在线观看| 在线免费不卡视频| ww在线观视频免费观看| xxxxx做受大片在线观看免费| 色偷偷女男人的天堂亚洲网| 久久精品国产亚洲AV麻豆~| 成人亚洲网站www在线观看| 台湾一级毛片永久免费| 久久精品免费视频观看| jizz在线免费观看| 亚洲AV日韩AV一区二区三曲| 香蕉视频在线观看亚洲| 国产亚洲日韩在线三区| 亚洲?v女人的天堂在线观看| 成人性生免费视频| 性生交片免费无码看人| 毛片无码免费无码播放| a级毛片毛片免费观看久潮| 一级毛片大全免费播放|