Bash中的İf-elif-else语句

时间:2019-07-15 17:51:58

标签: bash shell if-statement

我尝试使用for循环中的if-elif-else语句来控制我的文件在目录中是否存在。但是在if和elif命令行中给了我这个错误:没有命令

下面是代码示例:

#! /bin/bash
controlfile="String"
firstfile="String"
lastfile="String"
nsolve=false
for i in $(ls $file1| grep /*.png)
do
    firstfile=${i:0:21} #satır 10
    if ["$firstfile"!="$file2"]; then  #ERROR LINE
                #something doing...
                nsolve=false
        for j in $(ls $file2| grep /*.jpeg)
        do
            if [${j:0:31}==${controlfile:0:31}]; then #.if already jpeg file exist like png
                nsolve=true
                continue 
            else 
                nsolve=false        
            fi
        done
    elif [$nsolve==true]  #ERROR LINE
    then
        #something doing...
        continue    
    fi
    lastfile=${i:0:21}
done
printf "%s\n" "Successfully"

1 个答案:

答案 0 :(得分:-1)

您在[]周围缺少空格。