我的shell脚本中有以下字符串:
myString="app.mykey.value1,app.mykey.value2,app.mykey.value3,app.mykey.value4"
在分割逗号分隔值后,我想将每个值存储在不同的变量中。例如:
var1=app.mykey.value1
var2=app.mykey.value2
var3=app.mykey.value3
var4=app.mykey.value4
我如何在shell脚本中实现这一点?
答案 0 :(得分:0)
要安全地生成var1
,var2
等,请使用declare
:
readarray -td, vals <<<"$myString"
i=1
for val in "${vals[@]}"
do
declare "var$((i++))=$val"
done
但是,对于大多数用途,最好直接使用数组vals
而不是创建shell变量var1
,....