使用linux命令行工具缩进

时间:2012-08-08 15:54:38

标签: shell echo

我正在编写一个包含以下代码的linux脚本:

echo "\nCompiled on:\n `gcc --version`\n"

输出的格式如下:

Compiled on:
gcc (GCC) 3.4.4 etc...
This is free software...

但是我希望命令的格式如下:

Compiled on:
    gcc(GCC) 3.4.4 etc...
    This is free software...

如何格式化文本以便从gcc --version命令输出的每个LINE都有自己的选项卡?

1 个答案:

答案 0 :(得分:2)

怎么样:

echo "\nCompiled on:\n $(gcc --version | sed 's/^/\t/g' )\n"

gcc --version的输出通过管道传输到sed,在该行的开头添加了一个标签。

或者,您可以使用awk(如果您不需要额外的换行符,可以更短):

gcc --version | awk 'BEGIN { print "\nCompiled on:" } { print "\t" $0 } END { printf RS }'