たとえば、最初の行の長さに基づいて2行目を動的に実行したいとします。
DOMAINS=("gmail.com" "yahoo.com" "yahoo.co.uk" "yahoo.co.jp")
s_domain=(0 0 0 0)
答え1
少なくとも最近のbashバージョンでは、パラメータ拡張を要素ごとに配列に適用できます。
s_domain=("${DOMAINS[@]/*/0}")
前任者。
$ DOMAINS=("gmail.com" "yahoo.com" "yahoo.co.uk" "yahoo.co.jp")
$ s_domain=("${DOMAINS[@]/*/0}")
$ printf '%s\n' "${s_domain[@]}"
0
0
0
0
答え2
forループを使用してください:
for i in "${DOMAINS[@]}"; do s_domain+=(0); done