Question

what is the sed command to swap 2 character strings in the same 1 line

Posted March 7, 2016 6.9k views
DigitalOceanLinux Commands

example
input file: 03-06-2016
output file: 2016-03-06

2 comments
  • You need to use the substitute command, match and mark stuff on the left with ( ) and recall it on the right with \1 \2 \3, etc. In this case sed -n ’s/([0-9][0-9])-([0-9][0-9])-([0-9][0-9][0-9][0-9])/\3-\1-\2/’ <inputfile. Untested.
    Dick S.

  • Oops – this editor lost the backslashes in front of ALL the left and right parentheses in the above. Kindly insert them while I figure out how to deal with this editor!
    Dick S.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
1 answer

Hello,

The following post on stackoverflow may be a great resource:
http://unix.stackexchange.com/questions/21061/cleanly-swap-all-occurences-of-two-strings-using-sed

You may also check out: http://www.cyberciti.biz/faq/howto-sed-substitute-find-replace-multiple-patterns/

Please let us know if there is anything else we can help you with.

Best,
Mike
DigitalOcean Support
Check out our community for great tutorials, articles and FAQs!
https://digitalocean.com/community

Submit an Answer