How to replace space with comma using sed?

143,276

Solution 1

If you are talking about sed, this works:

sed -e "s/ /,/g" < a.txt

In vim, use same regex to replace:

s/ /,/g

Solution 2

Inside vim, you want to type when in normal (command) mode:

:%s/ /,/g

On the terminal prompt, you can use sed to perform this on a file:

sed -i 's/\ /,/g' input_file

Note: the -i option to sed means "in-place edit", as in that it will modify the input file.

Solution 3

I know it's not exactly what you're asking, but, for replacing a comma with a newline, this works great:

tr , '\n' < file

Solution 4

Try the following command and it should work out for you.

sed "s/\s/,/g" orignalFive.csv > editedFinal.csv

Solution 5

If you want the output on terminal then,

$sed 's/ /,/g' filename.txt

But if you want to edit the file itself i.e. if you want to replace space with the comma in the file then,

$sed -i 's/ /,/g' filename.txt
Share:
143,276
Teja
Author by

Teja

Updated on May 22, 2020

Comments

  • Teja
    Teja almost 4 years

    I would like to replace the empty space between each and every field with comma delimiter.Could someone let me know how can I do this.I tried the below command but it doesn't work.thanks.

    My command:
    :%s//,/
    
    
    53 51097 310780 1
    56 260 1925 1
    68 51282 278770 1
    77 46903 281485 1
    82 475 2600 1
    84 433 3395 1
    96 212 1545 1
    163 373819 1006375 1
    204 36917 117195 1
    
  • netpoetica
    netpoetica over 11 years
    It does look like he's trying to use Vim here, not sed, good call
  • tripleee
    tripleee over 11 years
    If you are on Max OSX the -i option requires an argument. You can pass it an empty string if you don't desire a backup.
  • Sean
    Sean almost 11 years
    ^ thank you so much, spent a while trying to fix this command on a mac
  • lacostenycoder
    lacostenycoder about 5 years
    Nice one, I was looking for this specifically, thanks