---------- Forwarded message ---------- From: Jordan Peacock <hewhocutsdown at gmail.com> Date: Jun 26, 2006 7:31 AM Subject: Re: [tclug-list] Additional bash scripting question To: Justin Krejci <jus at krytosvirus.com> That worked perfectly! Guess I was making things overly complicated, hey? Thank you -jordan On 6/26/06, Justin Krejci <jus at krytosvirus.com> wrote: > On Sunday 25 June 2006 12:27 pm, Jordan Peacock wrote: > > I have this working: > > > > #!/bin/bash > > IFS=" > > " > > for i in `find . -name '*.tar'`; do > > case "$i" in > > *.tar) > > mkdir `basename "$i" .tar` > > cd `basename "$i" .tar` > > tar xvf ../"$i" > > cd .. > > mv "$i" /home/hewhocutsdown/.Trash/ > > ;; > > esac > > done > > > > This works fine. I'm trying to tinker with it so that it'll do the > > same with .cbt files, except they don't need the folder to be made, in > > fact it's counter-productive. .cbt files are simply tar files, and > > with the previous version of Gnome I could merely right-click and > > extract them, but now I can't, so I may be required to rename the > > extension to .tar. (a 'mv' command I'm assuming) but so far nothing's > > worked. This is what I tried; > > > > #!/bin/bash > > IFS=" > > " > > for i in `find . -name '*.cbt'`; do > > case "$i" in > > *.cbt) > > mv `basename "$i" .cbt` `basename "$i" .tar` # fails > > mkdir `basename "$i" .cbt` # unneeded > > cd `basename "$i" .cbt` # uneeded > > tar xvf ../"$i" # fails > > cd .. > > mv "$i" /home/user/.Trash/ # works > > ;; > > esac > > done > > > > I just need tar to extract the archive in the immediate directory > > (there's no chance of overwriting, so I'm not concerned with that) and > > then dispose of the archive. > > > > Thanks thanks > > > > -jordan > > So if you need to extract all of the cbt (tar) files to the current directory > why not just do something like this > > find . -type f -name '*.cbt' -exec tar -xvf '{}' \; >