如果我有一个像
1050505,Some Customer, 1 , 1 ,Some Order, 5 , 6 Item 1050505,Some Customer, 1 , 1 ,Some Order, 5 , 6 Item 1050505,Some Customer, 1 , 1 ,Some Order, 5 , 6 Item 1050505,Some Customer, 1 , 1 ,Some Order, 5 , 6 Item 1050505,Some Customer, 1 , 1 ,Some Order, 5 , 6 Item
但是我需要去掉空格,除了在单词之间(即逗号之前或之后的空格)。
1050505,Some Customer,1,1,Some Order,5,6 Item
用标准命令行做这个最简单的方法是什么?
你可以用一些工具来做到这一点。 Perl的:
perl -pe 's/\s*,\s*/,/g;' file.txt
SED:
sed 's/,\s\+/,/g; s/\s\+,/,/g' < file.txt
AWK:
awk '{gsub(", +", ",", $0); gsub(" +,", ",", $0); print $0}' file.txt
一个简单的sed
命令可以做到这一点:
sed -i 's/,[ ]*/,/g' /path/to/file
perl -pi -e 's/[\s]+,/,/g;s/,[\s]+/,/g' your_file