On 11/26/2010 08:36 PM, Kaushal Shriyan wrote:
In my home folder I have 6 tomcat directories under
/home/kaushal/tomcat0......6

Under each of these tomcats there are sub folder conf and
inside these conf there is a file by the name server.xml so
for example I have
tomcat0,tomcat1,tomcat2,tomcat3,tomcat4,tomcat5 so i need to
edit server.xml and set port numbers for tomcat0 to 8080
tomcat1 to 8081 and similarly for others,the other way is to
go to individual directory and do it

Please suggest/guide

Given that you appear to be on a *nix-like box, I'd be tempted to just use shell-tools to do the editing instead of vim. You don't mention what changes you need. However, assuming you have a server.xml containing something like "<port>8080</port>" or "<port>PORT PLACEHOLDER</port>", I'd do something like

bash$ for i in 0 1 2 3 4 5 6; do sed -i.bak "s@<port>[^<]*</port>@<port>808${i}</port>@g" /home/kaushal/tomcat${i}/server.xml ; done


(all on one line, FWIW, and the "<port>[^<]*</port>" bit shouldn't be line-broken in case mailers between here and there mung it) Things get a little trickier if you have more than 10 directories, but doable:

bash$ for i in `seq 0 15`; do sed -i.bak "s@<port>[^<]*</port>@<port>$((8080+i))</port>@g" /home/kaushal/tomcat${i}/server.xml ; done

This does create backups as server.xml.bak (you can omit the "-i.bak" from the sed command if you don't want backups).

Hope this helps,

-tim





--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Reply via email to