Date: Mon, 17 Mar 2003 15:13:41 -0500 From: Edmond Baroud <SoHo@admin.fido.ca> To: Edmond Baroud <SoHo@admin.fido.ca> Cc: tparquet@twcny.rr.com, freebsd-questions@FreeBSD.ORG Subject: Re: Shell scripting questions Message-ID: <20030317151341.26a493fc.SoHo@admin.fido.ca> In-Reply-To: <20030317150947.6570b8a7.SoHo@admin.fido.ca> References: <3E762419.3040900@twcny.rr.com> <20030317150947.6570b8a7.SoHo@admin.fido.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 17 Mar 2003 15:09:47 -0500 Edmond Baroud <SoHo@admin.fido.ca> wrote: > On Mon, 17 Mar 2003 14:38:01 -0500 > Tom Parquette <tparquet@twcny.rr.com> wrote: > > > I've been looking through some basic shell books, and some online > > resources, that I have but I'm not finding the answer. > > Or maybe I just don't recognize the answer when I see it... > > > > I'm building a schell script that will backup my systems to CD-ROM. Or > > DVD when I can talk my wife into a burner. :-) > > > > I'm stuck on two items: > > 1) Since my tar files CAN exceed the capacity of a CD-ROM, I want to > > check in the script if I have to call split. > > The closest I can come to determining the size of the output file from > > tar (e.g.ad0s1a.tgz) is: file_size=`du -k /tmp/ad0s1a.tgz`. > > The problem I have is, while this gives me the result in number of K > > blocks, it also returns the file name and directory. I don't know how > > to get JUST the number of K blocks so I can do a numeric compare against > > 700m. > file_size=`du -k /tmp/ad0s1a.tgz|awk '{print $1}'` > num_compare=`expr 700000 - $file_size` > > > > 2) I have a function written that will tar/gzip the filesystem then > > split it into pieces that will be turned into .iso files that will be > > fed to burncd. I would like to capture the output of commands (e.g. ls > > -l /tmp/ad0s1a.*) into a "table" that I can examine to determine what > > was output by the split command so I know what mkisofs commands, and how > > many, I have to build/execute. Example: If I end up with a > > ad0s1a.tgz.aa, ab, and ac from split, I know I have to do mkisofs' for 3 > > files. > I don't know what your split command returns but I beleive u can put that in a loop. > > > > I also hope to use the same technique for determining what filesystems > > I have to backup in the first place. e.g. If I do a df command I want > > to pull out the filesystem name and what mountpoint it is on. The > > mountpoint is important to me because I do not want to back up some > > filesystems. e.g. I do not want to backup /tmp. > I think that all u're missing here is the "awk" command. > man awk ;) > fs=`df|awk '{print $6}'|grep -vi mounted` for i in $fs do if [ $i = "/" ] then backup_script args elseif [ $i = "/etc" ] backup_script args u dont need this else I forgot to remove it in this example :) > else elseif [ $i = "/tmp" ] echo "I'm not backing up /tmp !" else do something fi done > > > > TIA. > > Cheers... > hope this helps. > > Ed. > > > > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > > with "unsubscribe freebsd-questions" in the body of the message > > > -- > Edmond Baroud > UNIX Systems Admin mailto:SoHo@admin.fido.ca > Fingerprint 140F 5FD5 3FDD 45D9 226D 9602 8C3D EAFB 4E19 BEF9 > "UNIX is very user friendly, it's just picky about who its friends are." > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-questions" in the body of the message -- Edmond Baroud UNIX Systems Admin mailto:SoHo@admin.fido.ca Fingerprint 140F 5FD5 3FDD 45D9 226D 9602 8C3D EAFB 4E19 BEF9 "UNIX is very user friendly, it's just picky about who its friends are." To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030317151341.26a493fc.SoHo>