【发布时间】:2015-10-05 22:03:48
【问题描述】:
好的,这是一个作业,所以我不会在此处输入确切的脚本,但此时我真的很绝望,因为我想不出像这样基本的东西。所以我基本上是在检查命令行中写入的两个参数是否合适(用户需要正确输入),或者它会回显特定的错误消息。但是,当我输入一个具有 100% 正确参数的命令时,我会从第一个条件 ALWAYS 中收到错误回显消息(即使我切换了条件语句)。似乎脚本只是运行第一个回声并无论如何都停止。请帮忙,我理解这可能很难,因为我的代码更像是一个骨架。
if [ ... ]; then
echo "blah"
elif [ ... ]; then
echo "blah2"
else for file; do
#change file to the 1st argument
done
fi
我显然需要最后一个 else 发生,以使我的脚本真正达到其预期目的。但是,我的 if-fy 问题妨碍了我。 if 和 elif 需要返回 false 以便脚本针对适当的参数运行。 if 和 elif 检查人员是否正确键入了命令行。
【问题讨论】:
-
你可能需要展示你正在做的测试,因为如果有效的参数意味着你没有到达
else块,这可能意味着你已经把你的测试颠倒了(你需要查看if arg1 is invalid then echo blah blah 1 elif arg2 is invalid then echo blah bletch 2 else … fi。 -
您在显示
...的位置运行的实际代码是什么?这确实是这里最相关的细节。
标签: bash shell if-statement