自动挂载.ISO镜像的简单脚本

àì夳堔傛蜴生んèń 2022-08-24 14:24 274阅读 0赞

None.gif # !/bin/bash
None.gif############################################################################
None.gif#
None.gif# AutoMountISO:自动挂载/卸载ISO镜像
None.gif# Author:whodare#hotmail.com
None.gif#
None.gif#
None.gif# 功能 1.对于.ISO文件自动挂载,并自动开启文件浏览器浏览其内容
None.gif# 2.对于挂载点,自动完成卸载,并在必要时自动删除挂载点
None.gif#
None.gif# 整个脚本所完成的功能不需要用户的介入
None.gif#
None.gif###########################################################################
None.gif
None.gif################################关键变量####################################
None.gif
None.gif MOUNT_POINT = “” # 挂载点
None.gif ISO_PATH = “” # ISO镜像的路径
None.gif CMD = “” # 挂载?卸载
None.gif###########################################################################
None.gif
None.gif
None.gif#根据操作对象的类型判断是挂载还是卸载
None.gif
None.giffunction judge()
None.gif{
None.gif if [ - d $ 1 ]
None.gif then # 对象是目录,则进行卸载
None.gif {
None.gif CMD = umount
None.gif MOUNT_POINT = $ 1
None.gif }
None.gif else # 对象是文件,则进行挂载
None.gif {
None.gif # ISO_NAME=`basename $1`
None.gif # TYPE=${ISO_NAME##*.}
None.gif CMD = mount
None.gif ISO_PATH = $ 1
None.gif
None.gif }
None.gif fi
None.gif}
None.gif
None.giffunction do_umount
None.gif{
None.gif gksudo $CMD $MOUNT_POINT # 卸载
None.gif gksudo rm -rf $MOUNT_POINT # 删除挂载点
None.gif }
None.gif
None.gif
None.giffunction do_mount
None.gif{
None.gif if mount | grep $ISO_PATH # #镜像已经被挂载过,则自动卸载之
None.gif then
None.gif {
None.gif zenity entity -- error -- title = 提示 -- text = 文件$ISO_NAME的重复挂载被视为自动卸载
None.gif gksudo umount $ISO_PATH
None.gif exit 0
None.gif }
None.gif else
None.gif {
None.gif
None.gif count = 0 ;
None.gif
None.gif # 寻找可用的挂载点
None.gif while df | grep - q / media / cdrom $count 2 >/ dev / null
None.gif do
None.gif let count = $count + 1
None.gif done
None.gif
None.gif # 创建挂载点
None.gif MOUNT_POINT = /media/cdrom$count
None.gif
None.gif if [ ! - d $MOUNT_POINT ]
None.gif then
None.gif mkdir - p $MOUNT_POINT
None.gif fi
None.gif
None.gif # 挂载
None.gif gksudo $CMD -t iso9660,udf -o ro,loop,utf8 $ISO_PATH $MOUNT_POINT
None.gif
None.gif # 在文件管理器中浏览镜像的内容
None.gif nautilus $MOUNT_POINT
None.gif }
None.gif
None.gif fi
None.gif}
None.gif
None.gif
None.gifjudge $1
None.gif
None.gif if [ $CMD = umount ]
None.gifthen
None.gif do_umount
None.gif else
None.gif do_mount
None.giffi
None.gif
None.gif exit 0
None.gif
None.gif

发表评论

表情:
评论列表 (有 0 条评论,274人围观)

还没有评论,来说两句吧...

相关阅读

    相关 CentOS ISO镜像下载

    大多数项目的服务需要部署到 Linux 机器上运行,CentOS 7.X 是目前常用 Linux 操作系统。 关于 CentOS 的镜像文件下载,可以参考如下地址: