【问题标题】:indentation with linux command line tools使用 linux 命令行工具进行缩进
【发布时间】:2012-08-08 15:54:37
【问题描述】:

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

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

输出格式如下:

编译于: gcc (GCC) 3.4.4 等... 这是免费软件...

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

编译于: gcc(GCC) 3.4.4 等... 这是免费软件...

如何设置文本格式,使gcc --version 命令输出的每条LINE 都有自己的选项卡?

【问题讨论】:

    标签: shell echo


    【解决方案1】:

    怎么样:

    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 }'
    

    【讨论】:

    • 非常感谢。我讨厌对使用正则表达式和 awk 如此无知。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-05
    • 1970-01-01
    • 2015-03-04
    • 2013-02-19
    • 1970-01-01
    • 2010-10-03
    相关资源
    最近更新 更多