用awk分隔连接的列

arm*_*ndo 2 vim bash awk

我有一个数据文件,如下所示:

0.00000-130250.92921  28880.20200-159131.13121    301.58706
0.05000-130250.73120  28156.69202-158407.42322    294.03167
0.10000-130250.79137  28237.16138-158487.95275    294.87198
0.15000-130250.81209  28168.63042-158419.44250    294.15634
0.20000-130250.82418  28149.57611-158400.40029    293.95736
0.25000-130250.88438  28069.57135-158320.45573    293.12189
0.30000-130251.06059  28071.30576-158322.36635    293.14000
0.35000-130250.96639  28084.46351-158335.42990    293.27741
Run Code Online (Sandbox Code Playgroud)

正如您所看到的那些以" - "开头的列连接到前一个列,例如:0.35000-130250.96639,这应该是0.35000和-130250.96639.我可以用VIM分隔列,但我想知道是否可以用AWK做到这一点.

谢谢.

cho*_*oba 5

您可以使用sed:将每个-空格替换为空格并-:

sed -e 's/-/ -/g' input > output
Run Code Online (Sandbox Code Playgroud)

/g全局的手段,即它替换每一行上的所有出现,而不仅仅是第一行.