I have a file that looks like:
SECTION1 id name
sub section1
sub section2
SECTION2 id name
sub section3
sub section4
sub section6
SECTION1 id name
sub section7
sub section8
SECTION3 id name
sub section9
sub section10
sub section11
sub section12
SECTION2 id name
sub section13
sub section14
SECTION1 id name
sub section15
sub section16
SECTION3 id name
sub section17
sub section18
I need to sort this file section wise. The only thing I know is that I have ‘SECTION1’, ‘SECTION2’ AND ‘SECTION3’.
Expected output after sorting is:
SECTION1 id name
sub section1
sub section2
SECTION1 id name
sub section7
sub section8
SECTION1 id name
sub section15
sub section16
SECTION2 id name
sub section3
sub section4
sub section6
SECTION2 id name
sub section13
sub section14
SECTION3 id name
sub section9
sub section10
sub section11
sub section12
SECTION3 id name
sub section17
sub section18
Is there any easy way to do this in perl or using the utilities like grep,sed etc?
One more way using
perl:Assuming
infilehas the content of the question and following content ofscript.pl:Run it like:
With following output: