需要在unix中格式化两个unl文件

需要在unix中格式化两个unl文件,unix,informix,Unix,Informix,我有两个unl文件。。 sample.unl test.unl 如果使用下面的cat命令,则输出格式不正确 { cat sample.unl echo cat test.unl } 我希望输出正确对齐,如下所示 store_nbr country_code date 400 CA 2010-06-11 12:00:49 请帮帮我。。 感谢您为此编写小

我有两个unl文件。。 sample.unl test.unl 如果使用下面的cat命令,则输出格式不正确

{
cat sample.unl
echo
cat test.unl
}

我希望输出正确对齐,如下所示

store_nbr             country_code               date   
400                   CA                         2010-06-11 12:00:49
请帮帮我。。
感谢您为此编写小型python脚本:

$ cat format.py 
#!/usr/bin/python

import sys, re

with open(sys.argv[1], "r") as f:
    for line in f:
        print "%-20s %-20s %-20s" % tuple(re.split('\s+', line.rstrip('\n'), 2))
用法示例:

$ python format.py sample.unl
store_nbr            country_code         date                
400                  CA                   2010-06-11 12:00:49 

这两段文本之间的区别是什么?第一段只有表格的标题,第二段unl有表格输出数据。您应该知道,
cat
不是文本格式化程序。数据由
cat
正确处理,但是您没有使用适当的工具来完成您想要完成的任务。您的意思是什么?你想在没有python的情况下实现这一点吗?@user1509613:python是一种可以方便地实现这一点的脚本语言;Perl和Awk是另外两个。您的卸载文件似乎在字段之间缺少正确的分隔符,这将使您的生活陷入地狱——除非字段之间有选项卡。您需要小心使用哪种工具,但使用提供固定宽度输出的命令重新格式化数据的基本技术是正确的。如果您的数据包含新行、制表符或其他破坏简单的“每记录一行”方法(包含非常可变长度数据的blob;VARCHAR(2000))的东西,这将是一件有趣的事情。
$ python format.py sample.unl
store_nbr            country_code         date                
400                  CA                   2010-06-11 12:00:49