【问题标题】:Fixed Width File to 'Space' delimited in OS X在 OS X 中将文件宽度固定为“空格”分隔
【发布时间】:2017-02-13 20:59:09
【问题描述】:

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

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

所需的输出看起来与此类似;但是,我一直在使用以下代码,但由于单个空格分隔符不够,因此无法正常工作:

Column -s $' ' example.txt

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

【问题讨论】:

  • 你在用这些数据做什么?处理输入的最佳方式可能会根据您的要求选择最合适的输出。

标签: macos delimited


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    • 2020-03-19
    • 2011-08-04
    • 2014-05-19
    • 2019-06-14
    • 2016-02-29
    • 1970-01-01
    相关资源
    最近更新 更多