【发布时间】:2016-06-08 16:11:30
【问题描述】:
最近我遇到了一种不寻常的使用 echo 在客户端的 ksh 脚本中分配变量的情况。
比如有很多例子如下
a='something'
b='else'
c=`echo "${a} ${b}"`
我无法想出任何可能有人这样做的原因。
这可能有一些遗留原因吗? (我做 shell 已经 30 多年了,我从来没有见过这个)
还是只是无知?
【问题讨论】:
-
他们对 shell 脚本的工作原理一无所知?大概吧。
-
可能是遗留问题?他们之前做了一些对使用反引号有意义的事情,然后在发生变化时做出最小的变化?
-
有趣。我可以为 printf 想出很多理由,但在我的脑海中没有一个 echo 的理由。
-
Shell 脚本有幸被许多从未想要或没有机会(或无法)学习它的人使用。即使在大公司的大型生产脚本中,您也会看到各种初学者/无知的反模式。