gpt4 book ai didi

linux - 检查多个变量是否为空并设置它们的值 bourne shell

转载 作者:太空宇宙 更新时间:2023-11-04 09:16:57 24 4
gpt4 key购买 nike

我有很多变量 var1 var2 ... varx 可能为空也可能不为空。我不想有多个 if 语句并且想知道如何进行循环,我向其提供变量列表并检查它们是否为空。如果一个变量为空,它的值应该设置为-

最佳答案

这使您进入eval 领域:

for var in var1 var2 varx; do
eval 'val=$'"$var"
if [ -z "$val" ]; then
eval "${var}=-"
fi
done

请注意,任何可以提供任意变量名的源都可以滥用它来运行任意代码;确保仅在上述情况下使用它,其中 var 的值在您的控制之下。

关于linux - 检查多个变量是否为空并设置它们的值 bourne shell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46307919/

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