On Fri, 2008-05-30 at 20:26 +0200, Thomas Johansson wrote: > Craig White wrote: > > Looking to change a yml file (yaml is a database type file) > > > > *** from > > --- !ruby/object:Right > > attributes: > > name: Personnel Admin > > action: index > > id: "1" > > controller: assessments > > --- !ruby/object:Right > > attributes: > > name: Personnel Admin > > action: find > > id: "2" > > controller: assessments > > > > *** to > > --- !ruby/object:Right > > attributes_1: > > name: Personnel Admin > > action: index > > id: "1" > > controller: assessments > > --- !ruby/object:Right > > attributes_2: > > name: Personnel Admin > > action: find > > id: "2" > > controller: assessments > > > > where I'm taking the 'id:' field from each record and inserting an > > underscore and the id into the 'attributes' label directly above. > > > > Any takers? > > > > Thanks > > > > Craig > > > > _______________________________________________ > > CentOS mailing list > > CentOS at centos.org > > http://lists.centos.org/mailman/listinfo/centos > > > I use awk instead of sed... > > Reverse file order, perform changes using awk and reverse again > > tac test.yml | awk '{if ($1=="id:"){idtag=substr($2,2,1)}; \ > if ($1=="attributes:") {print "attributes_"idtag":"} \ > else {print $0}}' | tac - ---- That was awesome...thanks...I learned a lot there. I had to adjust the length of the substr function to get what I needed. Thanks Craig