我有一个大的txt文件,其中包含两列,这两列之间有很多空白:
123467, And the second part here
要删除我使用的列之间的空白
sed -e "s/ /,/g" < a.txt
但是它也删除了第二列中单词之间的空格
And the second part here
如何在不影响第二列中的单词的情况下仅删除列之间的空格?
答案 0 :(得分:2)
您可以这样做:
sed -E -e 's@, +@,@'
这将删除,
之后的空格。您也不应该使用g,因为它将尝试匹配该行中的所有模式。
答案 1 :(得分:1)
$ sed 's/ *//' file
123467,And the second part here
答案 2 :(得分:0)
由于您认为文件是由逗号分隔的列,因此使用一种工具将输入视为由逗号分隔的列是有意义的:
awk '$1=$1' OFS=, FS=', *' input