string manipulation in a shell script
Henrik W Lund
henrik.w.lund at broadpark.no
Sat Jul 17 03:23:03 PDT 2004
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,
>
> Regards,
>
> Kat.
Greetings!
Did you try this:
b=`sed -e s/:/-/g $a` #Replace all colons in the string $a with dashes
and then use the name $b.tar instead of $a.zip (I'd use the .tar instead
of .zip for a tar archive. Helps with consitency)?
I know I used that line in order to strip empty spaces from filenames,
replacing them with underscores.
Hope this helps!
-Henrik W Lund
More information about the freebsd-questions
mailing list