如果bashshell脚本中没有参数,如何退出?

如果bashshell脚本中没有参数,如何退出?,bash,arguments,exit,Bash,Arguments,Exit,我已经编写了代码来计算文件和目录的数量,但是如果没有给出参数,我很难让它退出。这就是我现在所拥有的,第一个是陈述问题。如果没有给出任何参数,如何更改此if语句使其退出 #!/bin/bash if [$# -eq 0]; echo "no arguments" exit 1 fi cd "$1" || exit n=0 m=0 for d in *; do if [ -d "$d" ]; then n=$((n+1)) else m=$((m+

我已经编写了代码来计算文件和目录的数量,但是如果没有给出参数,我很难让它退出。这就是我现在所拥有的,第一个是陈述问题。如果没有给出任何参数,如何更改此if语句使其退出

#!/bin/bash
if [$# -eq 0];
 echo "no arguments"
 exit 1
fi
cd "$1" || exit
n=0
m=0
for d in *;
do
    if [ -d "$d" ]; then
        n=$((n+1))
    else
        m=$((m+1))
    fi
done
echo "Files $m"
echo "Directories $n"
语法为:if[$-eq 0];那么

空格不是可选的,then也不是。因此,脚本的开头应该是:

#!/bin/bash
if [ $# -eq 0 ]; then
 echo "no arguments"
 exit 1
fi

使用shellcheck.net诊断常见错误。