Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash语法变量值赋值_Bash - Fatal编程技术网

Bash语法变量值赋值

Bash语法变量值赋值,bash,Bash,我不熟悉bash脚本。我遇到了下面的一段代码,我无法理解它。请帮我理解 var1=$var1 some_function_call $var2 var2是“some_function_call”函数的参数 我不知道这里到底发生了什么。提前谢谢 另外,任何指向优秀bash脚本教程的指针都很好 谢谢。新的函数调用的环境将“var1”设置为$var1;环境变量在主解释器中不会更改。$var2中的值作为参数传递给一些函数调用新的一些函数调用进程的环境将“var1”设置为$var1的值;环境变量在主解释

我不熟悉bash脚本。我遇到了下面的一段代码,我无法理解它。请帮我理解

var1=$var1 some_function_call $var2
var2是“some_function_call”函数的参数

我不知道这里到底发生了什么。提前谢谢

另外,任何指向优秀bash脚本教程的指针都很好


谢谢。

新的
函数调用的环境将“var1”设置为
$var1
;环境变量在主解释器中不会更改。
$var2
中的值作为参数传递给
一些函数调用

新的
一些函数调用
进程的环境将“var1”设置为
$var1
的值;环境变量在主解释器中不会更改。
$var2
中的值作为参数传递给
某些函数调用

代码中没有“env”,是“env”隐式的吗?上述代码段的含义与
env var1=$var1 some\u function\u call$var2
相同。从您的回复中我了解到,当
some_函数
运行时,它的值为'var1',正如在这段代码中设置的,而'var1'的值仅在
some_函数的执行范围内更改
(如果var1在此函数调用之前为“1”,并且var1在此代码中被赋值为“2”,则var1在
某些函数中为2,否则为1?如果我错了,请纠正我。Thanks@CodeWithPride:是,除了不支持
env
的任何参数,并且解释器和
一些函数调用
。你所说的“env
的所有参数都不受支持”是什么意思?另外,我不知道“中间过程”的概念在bash中。请帮助解释或任何我能理解这些内容的链接/引用。谢谢。
env
具有改变其行为的参数;-I,-0等。如果使用
env
则bash运行
env
,然后
env
运行您的程序,因此
env
是一个中介diate过程。这很有帮助。感谢您的解释。代码中没有“env”,是不是“env”隐式的?意思是上面的代码片段与
env var1=$var1 some_function\u call$var2
相同。据我从您的回答中了解,当
some_function
运行时,它的值为“var1”,如这段代码中设置的值和“var1”仅在
某些函数的执行范围内更改(如果var1在此函数调用之前为“1”,并且var1在此代码中被赋值为“2”,则var1在
某些函数中为2,否则为1?如果我错了,请纠正我。Thanks@CodeWithPride:是,除了不支持
env
的任何参数,并且解释器和
一些函数调用
。你所说的“env
的所有参数都不受支持”是什么意思?另外,我不知道“中间过程”的概念在bash中。请帮助解释或任何我能理解这些内容的链接/引用。谢谢。
env
具有改变其行为的参数;-I,-0等。如果使用
env
则bash运行
env
,然后
env
运行您的程序,因此
env
是一个中介diate过程。这很有帮助。谢谢你的解释。