Date: Sat, 17 Jul 2004 21:11:11 +0800 From: Kathy Quinlan <kat-free@kaqelectronics.dyndns.org> To: Freebsd-Questions <freebsd-questions@freebsd.org> Subject: Re: string manipulation in a shell script Message-ID: <40F9256F.5090807@kaqelectronics.dyndns.org> In-Reply-To: <20040717102122.GA29361@happy-idiot-talk.infracaninophile.co.uk> References: <40F8E457.1030303@kaqelectronics.dyndns.org> <20040717102122.GA29361@happy-idiot-talk.infracaninophile.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
Matthew Seaman wrote: > On Sat, Jul 17, 2004 at 04:33:27PM +0800, Kathy Quinlan wrote: > >>Hi guys and Gals, >> >>I have a simple script: >> >>#!/bin/sh >> >>a=ia$(date +%d%m%Y) >> >>tar -cf "$a.zip" "/usr/home/projects/lunaria/items all" >>mv $a.zip /usr/home/itemsall/ >> >>this nearly does what I want, I would like to put the time in the file >>name aswell. If I put the %T in the date variable, the resultant value >>for $a has : seperating the hours, minutes and seconds. >> >>Try as I might, I can not find away to remove the : and tar spits the >>dummy at them and it causes an IO device error. >> >>I looked through sed and awk, and spent an hour playing, but all to no >>avail. >> >>Anyhelp apreciated, > > > Well, to get date(1) to spit out a date-time string without any > unfortunate punctuation, try something like: > > % date +%Y%m%d%H%M%S > > See strftime(3) for details of all the % escapes you can use with > date(1). > > On the other hand, tar(1) has an option --force-local which causes it > to ignore colons in filenames as indicating a remote tape drive. > Nb. that's gnu tar, which is the standard tar in all 4.x and any > 5.x-RELEASE -- 5.2-CURRENT will shortly switch to bsdtar, and that > will probably work differently. Thanks Matthew, I looked in date, but was not aware of strftime. This is exactly what I needed :) Regards, Kat.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40F9256F.5090807>