在OS X中将固定宽度文件定为“空格”

macos delimited

27 观看

1回复

5 作者的声誉

需要将固定宽度文件转换为OS X中定界的“空格”。但是,我需要定界符为大于1的任意数量的空格。

 Principal Position       Year      Salary       Bonus     Compensation(2)
-----------------------   ----    ----------   --------    ---------------
Sample Name here . . .    xxxx     $xxx,xxx       $x             $x  

所需的输出看起来与此类似;但是,我一直在使用以下代码,但由于单个空格定界符不足而无法使用:

Column -s $' ' example.txt

是否可以将定界符设置为大于1的任意数量的空格?谢谢!

作者: Zach 的来源 发布者: 2017 年 2 月 13 日

回应 (1)


0

36927 作者的声誉

您可以使用sed将模式替换为其他文本。例如:

$ sed 's/ \{2,\}/@/g' sample.txt
 Principal Position@Year@Salary@Bonus@Compensation(2)
-----------------------@----@----------@--------@---------------
Sample Name here . . .@xxxx@$xxx,xxx@$x@$x@

但是,如果将多个空格分隔符替换为空格,则字段本身包含空格时会遇到问题,就像示例中的标头(标题和数据)一样。最好使用其他定界符。

作者: ghoti 发布者: 13.02.2017 09:34
32x32