如何根据字符串长度格式化 bash 输出



现在,我正在运行以下命令:

rpm -qa --queryformat '%{name}t%{installtime:date}n' | sort -nr

并获得如下输出:

dhclient        Fri 07 Feb 2014 01:37:47 PM EST
device-mapper-persistent-data   Fri 07 Feb 2014 01:27:37 PM EST
device-mapper-libs      Fri 07 Feb 2014 01:34:44 PM EST
device-mapper   Fri 07 Feb 2014 01:34:46 PM EST
device-mapper-event-libs        Fri 07 Feb 2014 01:34:48 PM EST
device-mapper-event     Fri 07 Feb 2014 01:34:50 PM EST
dbus-libs       Fri 07 Feb 2014 01:25:28 PM EST
dbus-glib       Fri 07 Feb 2014 01:33:48 PM EST
db4-utils       Fri 07 Feb 2014 01:30:05 PM EST
db4     Fri 07 Feb 2014 01:24:58 PM EST
dash    Fri 07 Feb 2014 01:30:19 PM EST
cyrus-sasl-lib  Fri 07 Feb 2014 01:25:48 PM EST

(注意奇数选项卡)

如何告诉命令我希望它将其输出到具有公共间距的表中,而不是指定制表符的数量?

额外问题:

我正在尝试做的只是找出已安装的内容以及何时安装,以便我可以卸载最近安装的所有内容。我如何做得比我正在做的更好?

rpm -qa --queryformat '%-40{name} %{installtime:date}n' | sort -nr
                        ^^^

这会将名称左对齐并将其填充为 40 个字符。

如果要按时间排序,可以先打印数字时间,以便于排序。

$ rpm -qa --queryformat '%-10{installtime}   %{installtime:date}   %{name}n' | sort -n
...
1375369678   Thu 01 Aug 2013 11:07:58 AM EDT   xorg-x11-util-macros
1375886901   Wed 07 Aug 2013 10:48:21 AM EDT   libdc1394
1378148462   Mon 02 Sep 2013 03:01:02 PM EDT   gnome-system-monitor
1384526666   Fri 15 Nov 2013 09:44:26 AM EST   perl-File-Next
1384526667   Fri 15 Nov 2013 09:44:27 AM EST   ack
1385065567   Thu 21 Nov 2013 03:26:07 PM EST   trousers
1385065568   Thu 21 Nov 2013 03:26:08 PM EST   tpm-tools
1387405750   Wed 18 Dec 2013 05:29:10 PM EST   libusb1

相关内容

  • 没有找到相关文章

最新更新