0

我有一个 BASH shell 脚本,在 Linux 中,可以挂载驱动器。我一直以“root”身份运行,甚至没有安装 sudo 或 su,以防万一。

我的问题是 UTF-8 文件名和目录,特别是在 vfat 分区上......

如何使用 UTF-8 文件名的正确选项挂载每种分区类型?

    TYPE="$(guess_fstype /dev/"${1}" 2>/dev/null)"
    # create mount point if it does not exist
    [ ! -e /mnt/$1 ] && mkdir -p /mnt/$1
   case $TYPE in 
        vfat) /bin/mount -t vfat /dev/$1 /mnt/$1 -o shortname=mixed,quiet,utf8 
            success=$? ;; 
        iso9660) mount -t iso9660 /dev/$1 /mnt/$1 -o utf8
            success=$? ;; 
        ntfs) mount -t ntfs /dev/$1 /mnt/$1
            success=$? ;; 
        unknown) mount /dev/$1 /mnt/$1 -o utf8 
            success=$? ;; 
        *) mount -t $TYPE /dev/$1 /mnt/$1
            success=$? ;; 
   esac
4

1 回答 1

1

究竟是什么行不通?是挂载,还是稍后列出文件?检查您的语言环境,也许?而且我认为所有文件系统或多或少都接受utf8选项,即使它们具有设置字符集的特定选项。检查man mount

于 2011-11-23T18:51:54.797 回答