gpt4 book ai didi

TCL 检查环境变量

转载 作者:行者123 更新时间:2023-12-05 00:25:52 29 4
gpt4 key购买 nike

所以我一直试图为此寻找答案,但在互联网上找不到答案。我需要检查是否存在环境变量。我以为我有正确的代码,但它一直返回 false。

if { [info exists ::env(USER)] } {
RAT::LogMsg INFO "Found USER"
} else {
RAT::LogMsg INFO "Nope!"
}

有任何想法吗?

最佳答案

您可能想检查实际设置了哪些环境变量;我不认为 USER是有保证的之一。

RAT::LogMsg INFO "Got these env-vars: [lsort [array names ::env]]"

puts stdout适用于您的环境,您可以尝试执行以下操作:
parray ::env

( parray 命令是一个 pretty-print 数组的过程。)

要可靠地获取当前用户名,请查看 tcl_platform array's user element .该数组是由 Tcl 内部生成的(好吧,带有对相关基本 OS API 的探测)而不是通过查看环境变量,并且该特定元素始终至少在 Tcl 8.4 中出现。
RAT::LogMsg INFO "Username is $::tcl_platform(user)"

我刚刚注意到文档是错误的:它说 user元素来自 USER和/或 LOGNAME环境变量。 It doesn't ,并且至少在 8.5 和 8.6 中没有。 (这绝对是我的错误。我在解决这个问题时忘记更新代码了。哎呀!)

关于TCL 检查环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23502981/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com