Shell 正确对齐列的脚本

Shell script to properly align columns

我有一个(3 列)制表符分隔的文件,例如:

activity_log    manager Manager
reserve_rm_hreserver_rm_log manager Manager
mo  apprv_mgr1  Approving Manager
wrview  manager Manager

我想让列正确对齐;在这种情况下:

activity_log                  manager      Manager
reserve_rm_hreserver_rm_log   manager      Manager
mo                            apprv_mgr1   Approving Manager
wrview                        manager      Manager

毫无疑问,awk 可以做到这一点,方法是扫描每列中最长的字符串,然后使用它来格式化列打印。我可以做到。

但我敢肯定,一定有一种单线方式可以更轻松地做到这一点。我说得对吗?

这应该有效:

$ column -t myfile.txt

您可以使用不同的字符来填充(man column是您的朋友)