bash - Reverse order of html with awk via line swapping -
basically every week have reverse following snippet
<!-- homepage slider begin --> <div class="container-fluid"> <div class="single-item-home hidden-xs"> <div class="slide slide--has-caption"> <a href="/1"> <img src="/sliders/1_example.jpg"> </a> </div> <div class="slide slide--has-caption"> <a href="/2"> <img src="/sliders/2_example.jpg"> </a> </div> <div class="slide slide--has-caption"> <a href="/3"> <img src="/sliders/3_example.jpg"> </a> </div> <div class="slide slide--has-caption"> <a href="/4"> <img src="/sliders/4_example.jpg"> </a> </div> </div> </div> <!-- homepage slider end --> basically i'm wanting make awk script , have cron job take lines 4-8 swap lines 22-26 , lines 10-14 swap lines 16-20 can seem find way swap 1 line , not line blocks.
is possible awk or silly?
you may use awk . below script
awk 'nr==fnr{line[i++]=$0} end{ for(j=0;j<i;j++){ if(j>=3 && j<=7){ print line[j+18]; continue; } else if(j>=21 && j<=25){ print line[j-18]; continue; } else if(j>=9 && j<=13){ print line[j+6]; continue; } else if(j>=15 && j<=19){ print line[j-6]; continue; } print line[j]; } }' file will want.
sample output
<!-- homepage slider begin --> <div class="container-fluid"> <div class="single-item-home hidden-xs"> <div class="slide slide--has-caption"> <a href="/4"> <img src="/sliders/4_example.jpg"> </a> </div> <div class="slide slide--has-caption"> <a href="/3"> <img src="/sliders/3_example.jpg"> </a> </div> <div class="slide slide--has-caption"> <a href="/2"> <img src="/sliders/2_example.jpg"> </a> </div> <div class="slide slide--has-caption"> <a href="/1"> <img src="/sliders/1_example.jpg"> </a> </div> </div> </div> <!-- homepage slider end --> note: leave array-bounds check you. if content of file static, may not need this
Comments
Post a Comment