bash - 如何测试是否需要 kinit?

标签 bash hadoop kerberos

我想在我的 .bashrc 文件中添加一些内容,以便在需要时运行 kinit。有没有办法测试我是否需要执行 kinit?像这样:

if [ kinitNeeded ]; 
    do kinit; 
done

kinitNeeded() { ??? }

最佳答案

您可以尝试 klist -s。从手册页:

”使 klist 静默运行(不产生输出),但仍根据是否找到凭据缓存来设置退出状态。如果 klist 找到凭据缓存,则退出状态为“0”,如果找到凭据缓存,则退出状态为“1”它没有或者如果票已过期。”

关于bash - 如何测试是否需要 kinit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37260431/

相关文章:

bash - Shell-script-internal encoding 与重定向输出不同

linux - 脚本bash更新网页并检查是否有其他差异

hadoop - hive.metastore.RetryingMetaStoreClient : MetaStoreClient lost connection. 尝试重新连接错误触发配置单元上的其他错误

linux - hadoop中的文件系统

hadoop - 使用谓词下推在 Hive 中动态加载分区

PHP kerberos 委派

bash - 通过管道时为脚本传递参数

bash - PostgreSQL 交互终端 : passing parameters with single quotes or double quotes - any difference?

spring-boot - Spring Boot + Kafka + Kerberos 配置

hadoop - 可以将 hdfs 文件从 hadoop 集群 KERBEROS 复制到其他集群而不是 KERBEROS 吗?