我试图遍历一个数组并将一个前缀附加到数组中的每个值。代码的简化版:

#!/bin/sh
databases=( db1 db2 db3 )
for i in live_${databases[@]} stage_${databases[@]}
do
    ....
done

但是,它只会在数组的第一个值前添加前缀-循环通过的值是:
live_db1 db2 db3 stage_db1 db2 db3

有什么想法吗?谢谢。

最佳答案

databases=( db1 db2 db3 )
for i in ${databases[@]/#/live_} ${databases[@]/#/stage_}
do
    ....
done

关于arrays - Shell:如何在遍历数组时添加前缀?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5809482/

10-13 09:10