我正在尝试使用以下语法:
A=${B:-C}
Run Code Online (Sandbox Code Playgroud)
A
变量在哪里,B
是我要分配C
的值,如果 B 为空,则是默认值。
现在我想B
用 command替换nc -l 443
,所以如果nc
通过端口 443 接收到一个字符串,它被分配给变量A
,否则A
设置为默认值。我将命令写为:
A=${`nc -l 443`:-NULL}
Run Code Online (Sandbox Code Playgroud)
但我收到一个错误:
-bash: A=${`nc -l 443`:-NULL}: bad substitution
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
shell bash string command-substitution variable-substitution