【发布时间】:2013-12-31 11:29:39
【问题描述】:
我在下一个意外标记& 附近有语法错误:
在 bash 脚本中它是这样的:
#!/bin/bash
var1=`(/usr/bin/time cdifonline -CD 186821 -ALL > /dev/null)|& grep real|awk '{print $2}'`
当我在 cli 上发出这个命令时,我得到了很好的输出,问题是当在脚本中调用它时,我可以从 var1 得到任何输出
./check_cdifonline.sh: command substitution: line 2: syntax error near unexpected token `&'
./check_cdifonline.sh: command substitution: line 2: `(/usr/bin/time cdifonline -CD 186821 -ALL >/dev/null) | & grep real | awk '{print $2}''
【问题讨论】:
-
你为什么要
&grep?您已经将输出传送到grep。 -
因为我需要从 time 命令解析实际值,并且您需要先发送到 stderr 以获取 time 的输出,所以这是不可能的
-
您的问题已被编辑以修复格式,但在第一个代码块的末尾仍有一些悬空字符。您可以通过编辑您的问题、删除第一个代码块并将其替换为您的实际代码的复制和粘贴来解决此问题,然后选择该块并单击
{}将其格式化为代码(它只是缩进 4列)。