如何在shell脚本中检查文件名时启用区分大小写

时间:2016-03-25 10:49:09

标签: bash shell sh

我想使用shell脚本检查文件是否存在。我使用下面的代码。 如果我有TEST.png或test.png,如果条件成功并且打印文件找到,则对于两个文件名。但我想为文件检查启用区分大小写。请告诉我如何在shell脚本中启用区分大小写。

    file="/mnt/floppy/test.png"
    if [ -f "$file" ]
    then
         echo "File found"

    else
         echo "Invalid file" 
    fi     

2 个答案:

答案 0 :(得分:3)

看看VFAT的区分大小写的挂载选项:

  

check=s:严格,区分大小写

     

check=r:放松,不区分大小写

     

check=n:正常,默认设置,目前不区分大小写

来源:https://www.kernel.org/doc/Documentation/filesystems/vfat.txt

答案 1 :(得分:0)

您可以使用grep:

file="/mnt/floppy/test.png"
echo $file | grep [A-Z] && echo "Invalid file: Filename has uppercase letters" && exit 1
# echo file | grep [a-z] && echo "Valid file"