我有一个像这样的CSV文件:
$ head file.csv
22.87333333 22.87333333
22.87944444 89.84361111
22.89722222 89.8425
我想将它转移到使用终端分隔的逗号。像这样;
$ head file.csv
22.87333333,22.87333333
22.87944444,89.84361111
22.89722222,89.8425
这样做的方法是什么?
答案 0 :(得分:1)
假设您的文件实际上是以空格分隔的值,请使用sed
命令:
$ sed -i 's/ /,/g' file.csv
将使用s
substitute command替换(-i
)以逗号替换每个匹配的空格(g
)。
答案 1 :(得分:1)
Sed有一个音译命令y
:
$ sed 'y/ /,/' file.csv
22.87333333,22.87333333
22.87944444,89.84361111
22.89722222,89.8425
答案 2 :(得分:1)
还有 awk 解决方案:
$ awk -v OFS=',' '{$1=$1}1' file.csv
答案 3 :(得分:0)
只需使用 tr (翻译)命令
即可tr " " "," <file
awk 等效
$ awk '{OFS=","; $1=$1}1' file
<强>输出:强>
22.87333333,22.87333333
22.87944444,89.84361111
22.89722222,89.8425