在這個非常簡單的例子,我需要解決的陣列元件的兩個鍵和值:擊間接引用關聯數組
declare -A writer
writer[H.P.]=Lovecraft
writer[Stephen]=King
writer[Clive]=Barker
writer[Jack]=Ketchum
for i in ${!writer[@]}
do
echo "$i ${writer[$i]}"
done
fullname()
{
pointer=$1[@]
for i in "${!pointer}"
do
echo "? $i"
done
}
fullname writer
該函數必須顯示相同的格式的輸出作爲示例環在它之前,它應該接收數組名稱,鍵或值的列表,我嘗試了所有這些,但沒有成功。任何建議,非常感謝。
通過驗證「$ 1」和「$ 2」是否僅僅是有效的標識符,可以使安全性更高,例如像[[$ 1 =〜[A-Za-z _] [A-Za- z0-9 _] +]] || return'。 – chepner 2014-12-14 15:31:29