RE: script problem



Thank You. I don't think I have ever even heard of that one before.
I was playing around with sed more since I first sent to the list and
figured out how to replace all of the "/" characters.
----------------
#!/bin/sh
DIRSTOBACKUP= "/usr/local/bin
/etc
/home/steve
/usr/local/src"

For name in ${DIRSTOBACKU[@]}
do
NEWNAME=`echo $name | sed s:/:_:g`
NEWNAME=`echo $NEWNAME | sed s:_::`
echo $NEWNAME
done
------------
That would give me the output of:
etc
home_steve
usr_local_src

And from there I can easily work with that. So I can now have my scripts
either use basename or sed to do what I need depending on how the boss wants
the file name.

Thanks to all.
-----Original Message-----
From: redhat-list-bounces@xxxxxxxxxx [mailto:redhat-list-
bounces@xxxxxxxxxx] On Behalf Of Kristoffer K***
Sent: Thursday, December 13, 2007 11:13 AM
To: General Red Hat Linux discussion list
Subject: RE: script problem

Have you tried `basename` ?

-----Original Message-----
From: redhat-list-bounces@xxxxxxxxxx
[mailto:redhat-list-bounces@xxxxxxxxxx] On Behalf Of Steven Buehler
Sent: Thursday, December 13, 2007 10:57 AM
To: 'General Red Hat Linux discussion list'
Subject: script problem

I have a backup script that I wrote. In it I have a variable
that
has listings of directories to back up. Because of some of the sizes
of
the
directories, and for other reasons, they now want me to break them
where
I
back them up into multiple files with the name of the directory instead
of
all in one file. It would be simple except that I can't find how to
get
just the final directory name for each directory.

Example:
DIRSTOBACKUP= "/usr/local/bin
/etc
/home/steve
/usr/local/src"

I can read thru each line of the variable, but unless I use the "split"
function and assign each item in the split, I can't get the last name
of
the
directory. How can this be accomplished? I guess it might be easier
to
find a way to just chop off the first "/" and then replace the rest
with
"_"
and use that as the backup file name. That way they can also look at
the
file name and see what directory it came from if I am able to replace
the
"/" characters. But alas, I am not that great at the regular
expression
replacement in a string either. I have tried:

DIRSTOBACKUP= "/usr/local/bin
/etc
/home/steve
/usr/local/src"

for name in ${DIRSTOBACKUP[@]}
do
NEWNAME=sed "s/\//_/g" < $name
echo $NEWNAME
done


But that doesn't seem to work. Any ideas?

Thanks
Steve

--
redhat-list mailing list
unsubscribe mailto:redhat-list-request@xxxxxxxxxx?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________

--
redhat-list mailing list
unsubscribe mailto:redhat-list-request@xxxxxxxxxx?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list

--
redhat-list mailing list
unsubscribe mailto:redhat-list-request@xxxxxxxxxx?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list