我尝试了几个选项,但这对我的情况不起作用。我的要求是.. 假设我在一个文件中有一个参数并且想要捕获如下详细信息并运行一个 shell 脚本 (ksh)。
PARAMETR=aname1:7,aname2:5
该参数包含 2 个以逗号分隔的值,每个值以冒号分隔。
所以,想要处理它,就好像字符串匹配一样,aname1
然后在不同的变量$v1=aname1
和$v2=7
. 如果字符串搜索为aname2
then$v1=aname2
和,则同样适用于其他值$v2=5
。
先感谢您。
那会做你所要求的
#!/bin/ksh
typeset -A valueArray
PARAMETR=aname1:7,aname2:5
paramArray=(${PARAMETR//,/ })
for ((i=0;i<=${#paramArray[@]};i++)); do
valueArray[${paramArray[$i]%:*}]=${paramArray[$i]#*:}
done
for j in ${!valueArray[@]}; do
print "$j = ${valueArray[$j]}"
done
希望它可以帮助
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句