一个衬垫用于填充上一个管道命令的输出列(类似于 printf)?

Bra*_*ley 5 command-line bash printf

我通常会用printf足够的空白填充每个单元格,以在其各自的列上保持标题位置。

最终,我可以遍历输出的每一行并进行足够的cut调用,以便我对printf每一行进行调用,但这似乎是一种非常低效的处理方式。

有没有一种方法可以将上述输出转换为漂亮的打印格式,而无需多行或多次调用相同的实用程序?

Bra*_*ley 4

有人发布了答案,但由于某种原因立即删除了它。他们向我指出了该column命令(直到现在我才意识到该命令的存在)。他们最初的命令不是 100% 正确,但仍然是正确的响应:

root@xxxxxxlp01 ~ $ spacewalk-report entitlements | cut -d, -f4,5-6 | column -t -s,
entitlement                                                                  used  total
RHN Management Entitled Servers                                              114   391
RHN Provisioning Entitled Servers                                            114   390
Virtualization Host Entitled Servers                                         0     13
Clustering technology beta                                                   0     1
Private Channel Family 1                                                     22
RHEL AS (v. 4 for x86) SDK                                                   0     12
RHEL Clustering                                                              0     1
RHEL Clustering Option Beta Debuginfo (v. 5)                                 0     1
RHEL Clustering Option Debuginfo (v. 5)                                      0     1
RHEL Desktop Beta Debuginfo (v. 5)                                           0     80
RHEL Desktop Debuginfo (v. 5)                                                0     80
RHEL Desktop FasTrack                                                        0     80
RHEL Desktop FasTrack (v. 5)                                                 0     80
RHEL Desktop Multi OS                                                        34    80
RHEL Desktop Supplementary                                                   18    80
RHEL Desktop Supplementary Beta Debuginfo (v. 5)                             0     80
RHEL Desktop Supplementary Debuginfo (v. 5)                                  0     80
RHEL Desktop Virtualization Beta Debuginfo (v. 5)                            0     80
RHEL Desktop Virtualization Debuginfo (v. 5)                                 0     80
RHEL Desktop Workstation                                                     16    80
RHEL Desktop Workstation Beta Debuginfo (v. 5)                               0     80
RHEL Desktop Workstation Debuginfo (v. 5)                                    0     80
RHEL Desktop Workstation FasTrack                                            0     80
RHEL Desktop Workstation FasTrack Debuginfo (v. 5)                           0     80
RHEL FasTrack                                                                0     59
RHEL FasTrack Debuginfo (v. 5)                                               0     59
Run Code Online (Sandbox Code Playgroud)

这个答案和他们删除的答案之间的唯一区别是这个答案保留了命令cut-s,在末尾添加了一个。如果他再次发帖,为了公平起见,我会接受它作为答案。