gpt4 book ai didi

linux - 显示在 sh 文件中声明的所有变量

转载 作者:太空狗 更新时间:2023-10-29 11:18:21 27 4
gpt4 key购买 nike

我有一个 test.sh 文件,其中包含如下内容

source lib.sh

input=$0

A=aa/bb/cc
B=$A/dd
C=$A/ee

doSomething $B $C

是否可以显示所有变量的值,以便在阅读代码时不必逐行跟踪它们的最终值。

在我的例子中,我的意思是显示

input=$0 
A=aa/bb/cc
B=aa/bb/cc/dd
C=aa/bb/cc/ee

我知道

bash -x test.sh

可以实现这个目标;但我不想执行 test.sh。 (执行 test.sh 中的函数会删除我磁盘上的一些重要文件。)我只想知道所有变量的值。

最佳答案

bash 中的“试运行”概念实际上是不可能的。在以下情况下,输出是什么:

if some_command; then
variable=output_1
else
variable=output_2
fi

为了确定脚本流程,您必须执行 some_command,这可能需要运行一些命令并获取其输出。这将修改您的系统(这将取决于命令)。因此,如果不执行 bash 脚本,就没有“安全”的方法来完成您需要的操作。

为了测试您的脚本,您必须模拟可以修改您系统的命令(例如,通过在开头添加 echo)。这样您就可以运行脚本并查看变量的值。

关于linux - 显示在 sh 文件中声明的所有变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32776615/

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