Shell脚本处理

JPF1024 2017-03-06 07:07:16
这个地方调用传递进来的所有参数,但是要排除掉已知参数(已知参数需要在SHELL里面进行替换处理),请问怎么排除掉呢?谢谢。


遇到一个问题,就是一部分已知的Shell脚本参数比较好处理(参数传递过来之后,我需要进行替换),但是一部分不知道的参数,该怎么处理呢?求解,,新人用Shell,谢谢.


比如:
下面的文件保存成:run.sh
调用可以:

./run.sh -t 20160202 -r table -i 0 objname TEST0001

上面的-t和-r都是已知参数,要进行处理之后,才可以最终调用,然后-i后面的是可能传递,然后不需要处理的,请问这个我该怎么改SHELL脚本呢?





cd /app/
optime=$(date +%Y%m%d)
oprun='test_inter_v1'
while getopts :r:t option
do
case "$option" in
t)
if [[ -n $OPTARG ]]; then
optime=$OPTARG
fi
;;
r)
if [[ -n $OPTARG ]]; then
if [ "$OPTARG" = "table" ]; then
oprun="test_tab_v1"
elif [ "$OPTARG" = "interface" ]; then
oprun="test_inter_v1"
fi
fi
;;
esac
done

# 问题简述在下面:
# 下面这个地方调用传递进来的所有参数,但是要排除掉-t和-r,请问怎么排除掉呢?谢谢。
java -jar -Dfile.encoding=GBK test.jar -isDebug false "-f $oprun -t $optime "
...全文
204 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
JPF1024 2017-03-07
  • 打赏
  • 举报
回复
引用 1 楼 ipqtjmqj 的回复:
再增加一个变量,case中增加i)并保存传入的值. 使用时先判断变量是否为空,不为空则使用之
哦好的,我试试,谢谢。
ipqtjmqj 2017-03-07
  • 打赏
  • 举报
回复
再增加一个变量,case中增加i)并保存传入的值. 使用时先判断变量是否为空,不为空则使用之

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧