如何漂亮地打印逗号分隔文件?

Roc*_*ell 0 bash awk sed pretty-print

以下是我的档案.我试图在输出之间保持恒定的宽度,以便所有管道符号都低于另一个,它看起来像表格式.我怎样才能做到这一点?当我邮寄输出时,我也需要具有相同的格式.

cat file.txt
name,score card,ID
Jack,Available,YES
Jen,NA,NO
Jerry,Available,YES
Padula,NA,YES
Mackenzi,NA,NO

sed 's/,/\t|\t/g' c.txt
name    |       score card      |       ID
Jack    |       Available       |       YES
Jen     |       NA      |       NO
Jerry   |       Available       |       YES
Padula  |       NA      |       YES
Mackenzi        |       NA      |       NO

==I want==
name      |       score card      |       ID
Jack      |       Available       |       YES
Jen       |       NA              |       NO
Jerry     |       Available       |       YES
Padula    |       NA              |       YES
Mackenzi  |       NA              |       NO
Run Code Online (Sandbox Code Playgroud)

Ed *_*ton 5

$ sed 's/,/,|,/g' file | column -t -s,
name      |  score card  |  ID
Jack      |  Available   |  YES
Jen       |  NA          |  NO
Jerry     |  Available   |  YES
Padula    |  NA          |  YES
Mackenzi  |  NA          |  NO
Run Code Online (Sandbox Code Playgroud)

  • 在邮件中使用恒定宽度的字体?这与shell或你的问题无关 - 手工创建任何表格文件并尝试通过邮件发送.调试那个.现在为这个输出做同样的事情. (3认同)
  • 这非常简洁,因为它不依赖于列数. (2认同)