Arthur2e5
2015-12-03 11:44:14 +08:00
因为 shell 语法的 word 单元这么做就是简单容易。况且这么做完全就是福利懒人,我还可以一行写好多个:
> t=$b b=$a a=$t g=$(echo 233)
并且人类的确就是有“对某个命令带着某一堆限定作用域的特殊环境运行( simple_command ::= ASSIGNMENT_WORD* cmd_word cmd_args*)” 的 shorthand 的需求。你可以找个一下子能定义多个的、显而易见的、和变量定义形式一致的这种语法试试……
你是喜欢
> ( # create separated environment
> set -o allexport
> CC = gcc
> CXX = g++
> ./configure
> )
还是
> CC=gcc CXX=g++ ./configure
你再考虑一下你这样的语法要加多少限制和惊喜,例如符合变量名要求开头的命令的参数里面里面不能有未 escape 的 = 之类的。
P.S. 关于敲键盘,记得有人吐槽说 dd 这种“出自按键重得按了可能骨折的时代”,倒是没考证过。