我正在处理一个shell脚本,它必须从传递的参数中提取字符串。如果我传递的参数,如shell脚本从参数中提取字符串
test.sh arg1=someArgument Arg2=AnoTherArgument
假设用户可以传递参数,在任何情况下,名称和值,
我要提取的参数和操作,有些东西一样
for arg in "[email protected]"
do
if [ lower("${arg}") == "arg1" ] then
# extract arg1's value and do something
elif [ lower("${arg}") == "arg2" ] then
# extract arg2's value and do something
fi
done
请帮助我如何在传递相同的情况下提取参数值?
这是不使用''==内有效POSIX通过环境传递的东西'''';改为使用一个等号“=”。另外,您定位的是哪个外壳和版本? bash 4内置了用于将变量转换为大写和小写的参数扩展运算符,而无需使用诸如tr之类的外部工具。 – 2012-07-25 12:41:04
你不应该改变你的问题,因为标题不一致,如果它解决了你的问题,接受答案 – 2012-07-25 12:43:49