使用SED在第一行之后删除空格

时间:2017-04-01 00:52:42

标签: bash csv awk sed

我正在尝试使用sed编辑文件,我的目标是删除数字之间的空白区域,但在第一个单词后保留它(例如Water 1983 02 13, - 1984 02 1,变成Water,19840213, 1984021) 这是我目前的命令:

awk '{print $10,$4,$2,$3,$5,$8,$6,$7}' czodiac | sed 's/Feb/02/g;s/Jan/02/g;s/–//g;s/ //g;s/,$//g'
到目前为止

输出:Water19830213,1984021

2 个答案:

答案 0 :(得分:1)

假设:

$ echo "$s"
Water 1983 02 13, - 1984 02 1

你可以这样做:

$ echo "$s" | awk '{sub(/ /,","); sub(/, - /,","); gsub(/[  ]+/,"")}1'
Water,19830213,1984021

答案 1 :(得分:0)

sed 'h; s/[^ ]*//; s/ //g; x; s/ .*/ /; G'