BASH:我可以回显string + grep + sed,但是如何在同一行添加更多字符串?

时间:2013-01-30 23:49:01

标签: bash sed newline printf echo

在这里提出问题始终是我最后的选择。我尝试了一切,即使是最尴尬的代码,所以我很困惑解释我尝试的没有成功。我有:

echo $output | grep -i -m 1 "Time:" | sed 's/.*\s\([0-9]*:[0-9]*:[0-9]*\).time.*/\1/'

输出:

23:25:31

易。

但是我想在最后添加一个字符串,比如“,$ year” - 所以我有:

23:25:31 , 2013

问题在于,无论我尝试了什么(printf,-n,-e,-ne,括号,引号,|,;,&,/ r等)都会出错或转到新行。

任何建议都会非常感激。

由于

2 个答案:

答案 0 :(得分:3)

time=$(echo $output | grep -i -m 1 "Time:" | sed 's/.*\s\([0-9]*:[0-9]*:[0-9]*\).time.*/\1/')
echo "The time is ${time}, 2013"

答案 1 :(得分:0)

候补

  1. 在echo + grep + sed管道的末尾添加tr -d '\n'
  2. { entire-echo-grep-sed-pipeline ; echo , 2013 ; } | xargs echo(但这会在之前添加空格,)