Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: shell script needed
That was pretty close. I was able to get it to work from there. Thanks
very much, it does exactly what I need. This is how it ended up:
#!ksh
touch run.ksh
find $ORACLE_HOME | while read I; do
A=$(ls -adl $I | awk {'print $1,"'$I'"'}) U=$(echo $A | awk {'print $1'} | cut -c2-4 | awk {'print "u="$1'}) G=$(echo $A | awk {'print $1'} | cut -c5-7 | awk {'print "g="$1'}) O=$(echo $A | awk {'print $1'} | cut -c8-11 | awk {'print "o="$1'}) U=$(echo $U | sed -e 's/-//g') G=$(echo $G | sed -e 's/-//g') O=$(echo $O | sed -e 's/-//g')
On 10/31/07, Vincent verpoort <vincent.verpoort_at_gmail.com> wrote:
>
>
>
> touch run.ksh
> > find <YOUR DIR HERE !!!!> | while read I; do
> > A=$(ls -adl $I | awk {'print $1,"'$I'"'})
> > U=$(echo $A | awk -F ' ' '{print $1}' | cut -c2-4 | awk {'print
> > "u="$1'})
> > G=$(echo $A | awk -F ' ' '{print $1}' | cut -c5-7 | awk {'print
> > "g="$1'})
> > O=$(echo $A | awk -F ' ' '{print $1}' | cut -c8-11 | awk {'print
> > "o="$1'})
> > U=$(echo $U | sed -e 's/-//g')
> > G=$(echo $G | sed -e 's/-//g')
> > O=$(echo $O | sed -e 's/-//g')
> > echo "chmod" $U $G $O $I >> run.ksh
> > done
> >
> >
> > here you go should work
> >
>
>
-- Andrew W. Kerber 'If at first you dont succeed, dont take up skydiving.' -- http://www.freelists.org/webpage/oracle-lReceived on Wed Oct 31 2007 - 14:30:43 CDT
![]() |
![]() |