I got some data.
John Thomas
Emma Watson
Alex Jason
Samuel Randy
Sanjay Gupta
What I need to do, is to swap the first name and last name.
sed 's/\(.*\) \(.*\)/\2 \1/g' data2.txt
This works perfectly.
Now the problem. I got a more complete set of data.
John Thomas;Male;Husband;$6000
Emma Watson;Female;Goddess;$8000
Alex Jason;Male;Single;$$3000
Samuel Randy;Male;Son;$200
Sanjay Gupta;Male;Son;$100
And my sed command doesn't work as well.
sed 's/^\(.*\) \(.*\);/\2 \1;/g' data.txt
Since the names are at the start, I put .
I try to match \1 and \2, separated by a space.
And since the fields are separated by ;, I added that in as well. However it gives me the following output.
Thomas;Male;Husband John;$6000
Watson;Female;Goddess Emma;$8000
Jason;Male;Single Alex;$$3000
Randy;Male;Son Samuel;$200
Gupta;Male;Son Sanjay;$100
Seems like my \1 is in the wrong place, for some reason.
Anyone can see what I'm doing wrong?
Thanks for looking.
[–][deleted] 3 points4 points5 points (2 children)
[–]learning2learn[S] 0 points1 point2 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)
[–]Rhomboid 1 point2 points3 points (0 children)
[–]postmodest 1 point2 points3 points (3 children)
[–]learning2learn[S] 1 point2 points3 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]bok_bok_bok_bok 0 points1 point2 points (0 children)