我試圖做的,如果在外殼如果哈希值不存在,只有做一些事情恰恰相反。我已經學會了從這裏創建Bash哈希:Associative arrays in Shell scripts除非在shell腳本中沒有嗎?
declare -A myhash
我聲明瞭一個簡單的哈希:
和
[ ${myhash[$key]+abc} ]
,看是否myhash [$關鍵]存在或不從這裏:Easiest way to check for an index or a key in an array?
我也學會了補充!在表達前做在if語句相反從這裏:How to make "if not true condition"?
但下面的表達式
if ! [ ${myhash[$key]+abc} ]; then
echo $key
fi
不起作用,並且沒有印刷的信息。沒有錯誤消息。
我嘗試這樣做:
[ ${myhash[$key]+abc} ] && echo $key
,並得到了錯誤信息:
abc: command not found
誰能告訴我怎麼做工作?
考慮編輯您的問題:只有當第一個成功
||
下一個命令進行包括1.您收到的確切錯誤消息或其他「不起作用」的證據。 2.一個爲'myhash [key]'提供值的簡單測試用例。 ''..''結構在大多數使用'man test'的系統中都有記錄。它希望將一個命令作爲將'$ {myhash [key] + abc}'轉換爲字符串的結果。祝你好運。 – shellter好的,剛編輯 – olala