在排序脚本中寻找匹配时出现意外的EOF

时间:2013-04-20 01:46:29

标签: bash unix

有人可以在这里协助我的剧本,有新鲜眼睛的人,已经工作了一段时间。所以: 在脚本结束时,我试图启用条件,如果用户输入单个字母 当输入脚本以“退出”消息终止/退出时:

#!/bin/bash
echo 'Enter file names (wild cards OK)'
read files
for input_source in $files ; do
    if test -f "$input_source" ; then 
        sort $input_source | uniq -c | head -10  
    elif "$input_source" = [a-z] ; then 
       exit
       echo 'Exit' 
   fi
done

1 个答案:

答案 0 :(得分:0)

您有一个未终止的字符串文字:

elif "$input_source = [a-z] ; then  # where's the end?

此外,一旦你修复它,它仍然无效。您可能希望使用test[[[,即便如此,=也不会这样做。你可能想要这个:

elif [[ "$input_source" =~ "^[a-z]$" ]]; then