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

Posted March 7, 2016 9.4k views
DigitalOceanLinux Commands

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

  • 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.

Submit an Answer
1 answer


The following post on stackoverflow may be a great resource:

You may also check out:

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

DigitalOcean Support
Check out our community for great tutorials, articles and FAQs!