0
我已经命令了一个命令,返回'版本:X'。bash:解析命令的输出并将其存储到变量中
即:
$>./mybox -v
$>version:2
我不明白为什么这不工作:
$>VERSION=$(/home/mybox -v | sed 's/.*version:\([0-9]*\).*/\1/')
$>echo $VERSION
$>
,如果我写这篇文章,它是确定:
$>VERSION=$(echo "version:2" | sed 's/.*version:\([0-9]*\).*/\1/')
$>echo $VERSION
$>2
问候
不会“版本:2”的出现在这种情况下在控制台?它不在问题的例子中。 – Sleafar
@Sleafar通常是的,除非它在复制粘贴或控制台行覆盖的工件中被忽略。这可能是一个评论,但它变得越来越长,我决定改变预感。 –