Hello everyone,
I have a list of inputs as below. My logic is to get the particular powerdisk which matches for ASM disk which means take the major & minor number of each asm disk and matches with powerdisk info then get the particular powerdisk
$ ls -l /dev/asm_* ---> ASM disk info
crw-r--r-- 1 oracle dba 34, 3 Jun 21 20:06 /dev/asm_disk1
crw-r--r-- 1 oracle dba 34, 4 Jun 21 20:06 /dev/asm_disk2
crw-r--r-- 1 oracle dba 34, 5 Jun 21 20:06 /dev/asm_disk3
crw-r--r-- 1 oracle dba 34, 11 Jun 21 20:05 /dev/asm_spfile
$ ls -l /dev/hdiskpower* --> Powerdisk info
brw-rw---- 1 root system 34, 3 Apr 7 2011 /dev/hdiskpower3
brw-rw---- 1 root system 34, 4 Apr 7 2011 /dev/hdiskpower4
brw-rw---- 1 root system 34, 5 Apr 7 2011 /dev/hdiskpower5
brw-rw---- 1 root system 34, 6 May 16 2011 /dev/hdiskpower6
brw-rw---- 1 root system 34, 7 May 16 2011 /dev/hdiskpower7
brw-rw---- 1 root system 34, 8 May 16 2011 /dev/hdiskpower8
brw-rw---- 1 root system 34, 9 May 16 2011 /dev/hdiskpower9
Below is the code i am using
Code:
ls -l /dev/asm_* > /tmp/input$$
cat /tmp/input$$ | while read line
do
mj=`echo $line | awk '{print $5}'`
mi=`echo $line | awk '{print $6}'`
asm_disk=`echo $line | awk '{print $10}'`
ls -l /dev/hdiskpower* | grep '"'$mj $mi'"' | awk '{print $10}' > /tmp/powerdiskinfo.rpt
done
=============
above code is not working while matching with major and minor number with the hdiskpower disks. Please advice how i can achive it . I need the output as below
ex:
==
asm_disk1 hdiskpower1
asm_disk2 hdiskpower3
asm_disk3 hdiskpower5
Kindly provide your suggetions and ideas. Thanks !
Regards
Kannan
