一、引言
最近在研读《C 程序设计新思维》(第 2 版),看到作者顺便解释了这么一个问题:
shell 为什么不让你在等号附近放空格
觉得很有趣。
ps: 本篇博客大量取自该书,只是该问题实在有趣,想要分享给大家:)
二、解释
你可以通过在一个命令前放一个赋值操作,这就为这个命令直接设置了这个环境变量。比如 env 命令会列出它所知道的所有环境变量:
$ PANTS=kakhi env | grep PANTS
PANTS=kakhi
你会看到输出了 PANTS=kakhi。
这就是为什么 shell 不让你在等号附近放空格的原因:空格是用来分割命令行的赋值操作和后续的命令行的。
希望能够给你带来一些帮助:)