实施的bash shell getops代码
问题描述:
我帮助创建的代码,两个不同的部分:实施的bash shell getops代码
FIRST - 检查是否有AT ARGUMENT
TYPE=""
while getopts "t:" opt; do
case $opt in
t) TYPE="$OPTARG"
;;
esac
done
if [ -z "$TYPE" ]; then
echo "No -t. Bye."
exit 1 # error
else
echo "Valid -t!"
exit 0 # error
fi
SECOND - 检查,如果T标志是有效的(IMG,图像或doc)
t)
case $OPTARG in
img|image|doc)
TYPE="$OPTARG"
;;
*)
echo >&2 "Unsupported type..."
exit 1
;;
esac
;;
对于我的生活,我不能将两者结合起来让他们工作。我怎样才能让这些脚本玩得很好,所以我不仅检查是否有参数,还要检查它是否有效,并相应地打印一条消息。
谢谢你给予的任何帮助。
答
#!/bin/bash
TYPE=""
while getopts "t:" opt; do
case $opt in
t)
case $OPTARG in
img|image|doc)
TYPE="$OPTARG"
;;
*)
echo >&2 "Unsupported type..."
exit 1
;;
esac
;;
esac
done
if [ -z "$TYPE" ]; then
echo "No -t. Bye."
exit 1 # error
else
echo "Valid -t!"
exit 0 # error
fi