awk scripts problem after upgrade from RHEL-2.1 to RHEL-4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We had two almost identical servers running RHEL-2.1
One of them we upgraded to RHEL-3, then to RHEL-4 (in a two stroke process).

		 up2date -u
	boot from rhel-3 cd#1,
		boot: linux upgrade
	default options all the way
	reboot
		up2date -u
	boot from rhel-4 cd#1
		boot: linux upgrade
	default options all the way
	reboot
		up2date -u

Now the second server (which was working fine yesterday) is RHEL-4
and old legacy accounting scripts don't work.

A regular user on the system has a script called "idxlist"
it is:

	[ -z "$LOCAL" ] && LOCAL=/u/apps/utilities
	awk -f$LOCAL/idxlist.awk -v date=$1 -v ext=$2 $LOCAL/idxpath

idxlist.awk's contents look like this:

BEGIN           {
                dash=index(date,"-")
                plus=index(date,"+")
                if (dash!=0)
                        {
                        range=1
                        beg=substr(date,1,dash-1)
                        end=substr(date,dash+1)
                        if (length(end)<6)
                                end=substr(beg,1,6-length(end)) end
                        }
                else if (plus!=0)
                        {
                        sequence=1
                        beg=substr(date,1,plus-1)
                        count=substr(date,plus+1)+0
                        }
                else    {
                        singular=1
                        }
                if(ext!="")
                        ext="." ext
                }
/^\*/           {next}
singular && substr(date,1,4)==$1        {
                look=1
#               NF=0
                "ls " $2 "arc" date "*" | getline
                if (NF==0)
                        print 0
                else print substr($1,1,length($1)-4) ext
                next
                }
sequence==1     {
                while("ls " $2 | getline file)
                        {
                        look=1
                        arc=(substr(file,1,3)=="arc")
                        nam=index(file,"arc")
                        #dat=substr(file,nam+3,6)+0
                        dat=substr(file,nam+3,6)
                        if (dat==beg&&start==0)
                                start=1
                        if (arc && start && start<=count)
                                {
                                if (found[dat]==0)
                                        {
print $2 substr(file,1,length(file)-4) ext
                                        start++
                                        }
                                found[dat]=1
                                }
                        }
                next
                }
range==1        {
                while("ls " $2 | getline file)
                        {
                        look=1
                        nam=index(file,"arc")
                        #dat=substr(file,nam+3,6)+0
                        dat=substr(file,nam+3,6)
                        if (dat>=beg && dat<=end)
                                {
                                if (found[dat]==0)
print $2 substr(file,1,length(file)-4) ext
                                found[dat]=1
                                }
                        }
                }
END     {
        if (look==0)
                print 0
        }

######  END OF IDXLIST.AWK

That would seem pretty simple.
The script just takes a date in the form of 060512 or 060507+5 or 060512-11

and it would give you a list of files in the directories that are listed in /u/apps/utilities/idxpath that contain the date string in the range given.

It works fine on server 1 (RHEL-2.1) but not on the upgraded server (RHEL-4)

any ideas?

-Ben.

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

[Index of Archives]     [CentOS]     [Kernel Development]     [PAM]     [Fedora Users]     [Red Hat Development]     [Big List of Linux Books]     [Linux Admin]     [Gimp]     [Asterisk PBX]     [Yosemite News]     [Red Hat Crash Utility]


  Powered by Linux