系统相关
首页 > 系统相关> > linux – 为什么有人会使用echo为bash或ksh中的变量赋值?

linux – 为什么有人会使用echo为bash或ksh中的变量赋值?

作者:互联网

最近我遇到了一个不寻常的echo用来在客户端的ksh脚本中分配变量.

例如,有许多实例,例如以下

a='something'
b='else'
c=`echo "${a} ${b}"`

我一直无法想出有人可能做到这一点的任何理由.

可能有一些遗留的原因吗?
(我已经做了30年的壳,从来没有见过这个)

还是只是无知?

解决方法:

无论是在当前的bash还是其POSIX sh或Bourne前辈中,都没有令人信服的理由.

c="$a $b"

…是给出的代码的完全替代,并且运行得更快(尝试将其置于循环中;命令替换,由反引号创建,将新shell作为子进程分离并读取其stdout – 高开销操作).

标签:bash,shell,linux,ksh
来源: https://codeday.me/bug/20190628/1311165.html