我想写一个查看security list-keychains
的bash脚本,看看是否有一个名为appledev的钥匙串。如果没有钥匙串我想用这个security create-keychain -p foo appledev
我正在尝试这样的事情,但这是荒谬的错误。
APPLEDEVKEYCHAIN=`security list-keychains | grep appledev`
if [[$APPLEDEVKEYCHAIN -eq 1]]; then
echo "Using keychain ${APPLEDEVKEYCHAIN}"
else
echo "Creating Keychain appledev"
security create-keychain -p foo appledev
fi
exit
答案 0 :(得分:3)
grep
如果找到任何内容,则返回成功退出代码。以下方法可行:
if security list-keychains | grep -q appledev; then
echo "Got keychain"
else
echo "Creating keychain"
security create-keychain -p foo appledev
fi
(-q
是“安静”切换到grep
;这会阻止grep
打印任何内容。)
其他一些可能对您的Bash shell脚本有帮助的事情:
$(command)
。$(command)
(或天堂禁止,反引号))时,在替换位置附加双引号。[[
和]]
周围的空格才能正常工作。