【问题标题】:How to join general string to every first column of every sub row如何将一般字符串连接到每个子行的第一列
【发布时间】:2014-12-14 05:50:34
【问题描述】:

我想在“ADMIN”和“DB”下面的情况下将每个第一个通用字符串连接到它们所代表的数据以及它们每次在第一列上的位置。

例子:

ADMIN
                         ADMIN_DB         Running          1          0          1          0          0          0         80
                         ADMIN_CATALOG    Running          0          0          1          0          0          0        452
                         ADMIN_CAT        Running          0          0          1          0          0          0         58
DB
               SLAVE_DB    Running          2          0          3          0          0          0         94
               DB_BAK      Running          1          0          1          0          0          0         54
             HISTORY_DB    Running          0          0          1          0          0          0         40
         HISTORY_DB_BAK    Running          0          0          1          0          0          0         59

期望:

ADMIN ADMIN_DB         Running          1          0          1          0          0          0         80
ADMIN ADMIN_CATALOG    Running          0          0          1          0          0          0        452
ADMIN ADMIN_CAT        Running          0          0          1          0          0          0         58
DB SLAVE_DB            Running          2          0          3          0          0          0         94
DB DB_BAK              Running          1          0          1          0          0          0         54
DB HISTORY_DB          Running          0          0          1          0          0          0         40
DB HISTORY_DB_BAK      Running          0          0          1          0          0          0         59

过去我有一个例子,这是可以做这件事的起点,但我不太了解这种脚本:perl -ne 'chomp; if($. % 2){print "$_,";next;}

【问题讨论】:

    标签: bash perl awk sed


    【解决方案1】:

    怎么样

    awk 'NF==1{ val=$0; next} {print val" "$0}' input
    

    您可以使用column 实用程序将输出格式化为

    $ awk 'NF==1{ val=$0; next} { print val" "$0}' input | column -t
    ADMIN  ADMIN_DB        Running  1  0  1  0  0  0  80
    ADMIN  ADMIN_CATALOG   Running  0  0  1  0  0  0  452
    ADMIN  ADMIN_CAT       Running  0  0  1  0  0  0  58
    DB     SLAVE_DB        Running  2  0  3  0  0  0  94
    DB     DB_BAK          Running  1  0  1  0  0  0  54
    DB     HISTORY_DB      Running  0  0  1  0  0  0  40
    DB     HISTORY_DB_BAK  Running  0  0  1  0  0  0  59
    

    【讨论】:

      猜你喜欢
      • 2018-12-18
      • 2016-01-17
      • 2017-01-17
      • 2021-05-12
      • 1970-01-01
      • 2022-12-17
      • 2022-06-17
      • 2020-09-07
      • 2015-05-02
      相关资源
      最近更新 更多