How to not expand a command-substitution into multiple parameters
因此,根据文档,写在多行上的命令将扩展为多个参数。这与bash行为不一致。例如
你好,Lua:
1 2 | local msg ="Hello, world!" return msg |
鱼>
1 | redis-cli EVAL (cat hello.lua) 0 |
号
失败-
而
fish没有直接类似于bash的"$(…)"。目前鱼类的最佳技术是操纵
1 2 | set -l IFS redis-cli EVAL (cat hello.lua) 0 |
这将把
假设您不希望您的IFS更改继续存在,您可以将更改范围限定到一个函数或一个块:
1 2 3 4 | begin set -l IFS redis-cli EVAL (cat hello.lua) 0 end |
号