首页 > 解决方案 > 在函数中使用带有 $ 的全局变量和在函数中不使用 $ 有什么区别?

问题描述

所以我在开始时声明了一个全局变量,然后我进入一个函数并尝试更改它。但是,当我使用密钥时它可以工作,$而当我不使用密钥时它不起作用。

位置和球都是全局变量

if [ theball -eq 1 ];then
       location=$(thefunction1)
fi

这不起作用

但是,这有效

if [ $theball -eq 1 ];then
    location=$(function1)
fi

另外,如果我有这样的代码,并且在位置上也有一个 $,那会有什么不同。

if [ $theball -eq 1 ];then
    $location=$(function1)
fi

$有和没有调用全局变量有什么区别。一种仅用于分配值,另一种用于获取存储在变量中的值。

标签: bashshell

解决方案


推荐阅读