gpt4 book ai didi

shell - $?VAR 在 csh 中是什么意思?

转载 作者:行者123 更新时间:2023-12-04 20:11:24 30 4
gpt4 key购买 nike

我遇到过用csh编写的这段代码:

if ( ! $?LM_LICENSE_FILE ) then
setenv LM_LICENSE_FILE $_LmLicense
else
switch("$LM_LICENSE_FILE")
case *${_LmLicense}*:
breaksw
default:
setenv LM_LICENSE_FILE "${_LmLicense}:$LM_LICENSE_FILE"
endsw
endif

请注意这一行:
if ( ! $?LM_LICENSE_FILE ) then

什么 $?做在 $?LM_LICENSE_FILE ?
LM_LICENSE_FILE是一个 shell 变量(或更准确地说是宏),我知道 $LM_LICENSE_FILE用于检索其值,但在 $ 后面有一个尾随问号,即 $?LM_LICENSE_FILE ,它的含义是什么?

最佳答案

$?VAR如果 $VAR,则扩展为 1(真)被设置(设置为任何东西,甚至是空字符串),如果不是,则设置为 0(假)。

这记录在 csh manual 中;点击链接并搜索 $? ,或输入 man cshman tcsh .

哦,csh 没有宏。

关于shell - $?VAR 在 csh 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16975968/

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