[英]Check if an alias exist in keystore
我是 shell 脚本的新手,我有一个脚本,用于使用 keytool 导入证书和导入密钥库。 此脚本位于 Pod 内,有时我必须重新启动我的 pod,有时当此脚本运行时出现此错误
现有条目别名服务器存在,覆盖? [no]:输入新的别名(RETURN 取消该条目的导入):
我知道有列出别名的命令
keytool -list -keystore keystore.jks -storepass changeit -alias server
这给出了输出
服务器,2022 年 6 月 22 日,PrivateKeyEntry,证书指纹 (SHA-256):AC:DC:12:...
对于不存在的别名,此命令会给出异常
keytool 错误:java.lang.Exception:别名不存在
有没有一种方法可以检查密钥库别名是否存在,如果不允许执行keytool -importcert命令? 是否有任何返回代码可以比较以继续执行?
谢谢
你可以用$?
查找最后执行的命令的返回值。
返回值 0 表示成功,否则,如果出现异常,您会得到一个非 0 的数字。
keytool -list -keystore keystore.jks -storepass changeit -alias server
if [[ $? = 0 ]]; then
echo "alias is present"
else
echo "alias is not present"
fi
编辑
正如查尔斯·达菲(Charles Duffy)指出的那样使用$?
是气馁。
你可以简单地使用
if keytool -list -keystore keystore.jks -storepass changeit -alias server; then
echo "alias is present"
else
echo "alias is not present"
fi
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.