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