问答详情
源自:4-3 shell多分支if语句例:判断用户输入的是什么文件

我的问题出在哪里?

 #!/bin/bash

  8

  9 #判断用户输入的是什么文件

 10 #read -t 30 -p "Please input a file name:" File

 11 read -t 30 -p "Please input a filename:" File

 12 #接收键盘的输入,并赋予变量file

 13         if [ -z "$File" ]

 14         #判断file变量是否为空

 15         then

 16                 echo "Error, please input a file name!"

 17                 exit 11

 18

 19         elif [ ! -e "$File" ]

 20         #判断file的值是否存在

 21                 then

 22                         echo "Your input is not a file name!"

 23                 exit 22

 24         elif [ -f "$File"]

 25         #判断file的值是否为普通文件

 26                         then

 27                                 echo "$File is a regular file!"

 28         elif [ -d "$File" ]

 29         #判断file的值是否为目录文件

 30                         then

 31                                 echo "$File is a directory !"

 32                 else

 33                     echo "$File is another file!"

 34 fi

~



出错提示:

Please input a filename:

check_file.sh:行25: 未预期的符号 `elif' 附近有语法错误

check_file.sh:行25: ` elif [ -f "$File"]'


提问者:Stone_He 2019-05-22 11:34

个回答

  • 慕粉3211008
    2019-05-27 17:59:09
    已采纳

    后面缺个空格