gpt4 book ai didi

shell - 将变量从一个 shell 脚本导出到另一个 shell 脚本

转载 作者:行者123 更新时间:2023-12-04 21:55:27 27 4
gpt4 key购买 nike

我有几个脚本,它们的第一部分看起来是一样的。这部分的功能是识别脚本在哪台机器上运行并相应地设置几个变量。它看起来像这样:

   ENV=`echo $LOGNAME | cut -c1-8`
if [ $ENV = "vrt3400b" ]
then
echo "Using TEST specific settings."
NAME_PREFIX="tst"
GROUP_NUMBER=`echo $USER | cut -c4-5`
GROUP_NUMBER_SUFFIX=00`echo $USER | cut -c8-9`
...
elif [ $ENV = "vrp3400a" ]
then
echo "Using PROD specific settings."
NAME_PREFIX="prd"
...

问题是,随着脚本数量的增加,维护小更改的开销会变得非常耗时。

我提取了上面的部分并将其放入一个单独的脚本中,然后由所有其他脚本调用。但变量当然不会转发到其他脚本。也尝试过 export NAME_PREFIX="tst" 但没有成功。

有人可以告诉我应该使用哪种方法来解决问题吗?

我正在考虑让该部分识别环境,将属性写入文件,然后可以将其传递给其他脚本。但似乎必须有一种更直接的方法。

//迈克

最佳答案

初始化脚本(1.sh)

a=123
b=abc

export a b

应用程序脚本

#!/bin/sh

. 1.sh

echo \$a: $a
echo \$b: $b

关于shell - 将变量从一个 shell 脚本导出到另一个 shell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1714167/

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