为什么 foo=bar 与 foo= bar 不同?

Nik*_* R. 4 shell variable assignment

这个命令中的空格的解释是什么foo= bar

为什么foo=barfoo= bar解释不同

示例(Ubuntu bash)

developer@1604:~$ foo=bar
developer@1604:~$ foo= bar
The program 'bar' is currently not installed. You can install it by typing:
sudo apt install bar
Run Code Online (Sandbox Code Playgroud)

fra*_*dig 10

这是语法:Bash 变量使用紧跟在赋值运算符之后的值进行初始化=。简直就是这样……

当你这样做时,foo= bar你将一个空字符串分配给变量foo,然后执行命令bar