${3} -6ren">
gpt4 book ai didi

Linux/Unix 脚本 - 几行中最奇怪的行为 - 变量集但为空

转载 作者:太空宇宙 更新时间:2023-11-04 04:29:30 25 4
gpt4 key购买 nike

我可以告诉你,这是我很长一段时间以来见过的最疯狂的事情。

我在 CentOS 5.4 上运行了这个(部分)sh 脚本:

# Check GOLD_DIR`
echo $GOLD_DIR"<--"
#export GOLD_DIR=/share/apps/GOLD_Suite/GOLD <uncommenting this line works!!
if [ "X$GOLD_DIR" = "X" ] ; then
echo "ERROR: GOLD_DIR is (probably) not set on host ${HostName}" >> ${3}
exit 1
fi

这给出了以下输出:

/share/apps/GOLD_Suite/GOLD<-- 
Waiting for 5 seconds ..... Testing output

The test script did spawn a job (i.e. PVM ran OK),
but errors were detected in the test script output
on the host machine: Below is the output

ERROR: GOLD_DIR is (probably) not set on host xxx.yyy.local

如您所见 GOLD_DIR变量已设置(脚本找到它,如后缀“<--”的输出所示)!如果我取消注释 GOLD_DIR 的导出脚本代码(第一个片段)中的变量一切正常。

编辑:GOLD_DIR导出于/etc/profile (使用export GOLD_DIR=/share/apps/GOLD_Suite/GOLD)

有什么想法吗?

注1:我不知道这是否重要,但这是 PVM 上的生成脚本。

注2:脚本是用sh #!/bin/sh编写的但我正在使用 bash...

编辑3:我可以工作,但我不知道为什么! - 好吧,我所做的是将主机名(使用 sudo hostname abc )重命名为我通过 ssh 进入的机器的名称(例如 abc)。在 PVM 列出机器的全名之前 abc.mycompany.local 。请注意,abc.mycompany.localabc是同一台机器。

最佳答案

因此 var 已设置。如果您只是执行 export GOLD_DIR 而不是注释行(不设置值),它会起作用吗?

还有。这是个别案例吗? CentOS 上有 bash 吗?尝试使用 [[ ]] 来检查哪里出了问题。

关于Linux/Unix 脚本 - 几行中最奇怪的行为 - 变量集但为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4931921/

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