【发布时间】:2015-04-12 04:09:37
【问题描述】:
我怎样才能 awk、sed 或 tr " " 并将其替换为 ","。更具体地说,当每行的字段数不同时。我知道如何简单地解决问题
sed 's/ /,/g'
这是一个问题的例子
Ted 36 Shaker Heights 04-25-1978
Robin 34 Vancouver 07-23-1980
Marshall 36 St. Cloud 11-28-1978
Lily 37 New York 03-22-1978
我需要 sed、awk 或 tr 以便结果变为
Ted,36,Shaker Heights,04-25-1978
Robin,34,Vancouver,07-23-1980
Marshall,36,St. Cloud,11-28-1978
Lily,37,New York,03-22-1978
我在使用城市名称中的空格时遇到问题。关于如何解决这个问题的任何建议?每行的字段编号并不总是一致的。根据城市的不同,它将有 4 个或 5 个。
【问题讨论】:
-
如果不总是相同,请显示一些发生这种情况的示例输入
-
我做到了。 3 行有 5 个字段,1 行(第 2 行)有 4 个字段。它始终是姓名、年龄、城市、出生日期。
-
所以目标是用逗号替换第一个,第二个和最后一个空格,对吗?或者空格也可以出现在另一个字段中?
-
@Wintermute 我猜名称中可能会出现空格。就像某人的名字是安玛丽一样。