首页 > 解决方案 > 如何修复 Bash 脚本错误

问题描述

我写了一个名为 cs210_list.sh 的小 Bash 脚本,当我在 linux 中将它作为 bash cs210_list.sh 或 sh cs210_list.sh 运行时,它给了我以下错误:

cs210_list.sh:第 2 行:[0:找不到命令

cs210_list.sh:第 21 行:意外标记“fi”附近的语法错误

cs210_list.sh:第 21 行:`fi'

这是我的第一个 bash 脚本。我不知道为什么我会收到错误。顺便说一句,“(第 21 行)”实际上不在我的代码中,它只是供您参考。

美元?-eq 0 这个命令应该确定是否有作为参数

#!/bin/bash
if [$? -eq 0];
then
   echo "Error: Missing argument";
   exit 1
fi
if [-e "$1"];
then
    if [-d "$1"];
    then
        for i in $(ls)
        do
            if [-d "$i"];
            then
                echo "File: $i"
                echo ""
            else
                echo "File: $i"
                echo "  Size: " $(stat -c%s $i)
            fi
     fi (line 21)
else
    echo "$Error: File doesn't exist"
fi  
done

标签: bashshell

解决方案


推荐阅读