我如何检查参数数量是否正确(一个参数)。如果有人尝试调用脚本而不传递正确数量的参数,并检查以确保命令行参数确实存在并且是一个目录。
最佳答案
#!/bin/sh
if [ "$#" -ne 1 ] || ! [ -d "$1" ]; then
echo "Usage: $0 DIRECTORY" >&2
exit 1
fi
翻译:如果参数数量不(数字)等于 1 或者第一个参数不是目录,则将使用情况输出到 stderr 并退出并显示失败状态代码。
更友好的错误报告:
#!/bin/sh
if [ "$#" -ne 1 ]; then
echo "Usage: $0 DIRECTORY" >&2
exit 1
fi
if ! [ -e "$1" ]; then
echo "$1 not found" >&2
exit 1
fi
if ! [ -d "$1" ]; then
echo "$1 not a directory" >&2
exit 1
fi
关于shell - 检查参数数量是否正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4341630/