File


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users File
# 1  
Old 11-07-2006
File

ihave a file in the following format...

Company:abc
Cid Cname
1 Wal
2 Buy
Company:def
mkl
Cid Cname
10 Bank
11 XX
Company:mnk
234
Cid Cname
10 bank
1 Wal



The O/p should be

Company Cid Cname
abc 1 Wal
abc 2 Buy
defmkl 10 Bank
defmkl 11 XX
mnk234 10 bank
mnk234 1 Wal


I was able to do if the company number is not getting extended in the second line...I was unable to do if it was extended ....
# 2  
Old 11-08-2006
Code:
awk 'BEGIN{ print "Company Cid Cname" }
{
if( match ( $0 , "Company:" ) )
{
        split($0,arr,":")
        cmpny = arr[2]
        getline ;
        if( ! match($0 , "Cid Cname" ) )
        {
                cmpny = cmpny $0;
                getline
        }
}
else
        print cmpny , $0

}' file

# 3  
Old 11-08-2006
Thank you...
# 4  
Old 11-10-2006
just another try,

previous one is definitely the better one! Smilie

Code:
#! /usr/bin/zsh
                                                                                
echo "Company Cid Cname"
while read line
do
        temp=`echo $line | sed 's/:.*//g'`
        if [ $temp = "Company" ]
        then
                compHeader=`echo $line | sed 's/Company://g'`
                header=1
                continue
        fi
        if [ $header -eq 1 ]
        then
                if [ $line = "Cid Cname" ]
                then
                        header=0
                else
                        compHeader=$compHeader$line
                fi
                continue
        fi
        echo $compHeader" "$line
done < file
                                                                                
exit 0

Login or Register to Ask a Question

Previous Thread | Next Thread

3 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script (sh file) logic to compare contents of one file with another file and output to file

Shell script logic Hi I have 2 input files like with file 1 content as (file1) "BRGTEST-242" a.txt "BRGTEST-240" a.txt "BRGTEST-219" e.txt File 2 contents as fle(2) "BRGTEST-244" a.txt "BRGTEST-244" b.txt "BRGTEST-231" c.txt "BRGTEST-231" d.txt "BRGTEST-221" e.txt I want to get... (22 Replies)
Discussion started by: pottic
22 Replies

2. Shell Programming and Scripting

Compare 2 text file with 1 column in each file and write mismatch data to 3rd file

Hi, I need to compare 2 text files with around 60000 rows and 1 column. I need to compare these and write the mismatch data to 3rd file. File1 - file2 = file3 wc -l file1.txt 58112 wc -l file2.txt 55260 head -5 file1.txt 101214200123 101214700300 101250030067 101214100500... (10 Replies)
Discussion started by: Divya Nochiyil
10 Replies

3. Shell Programming and Scripting

Match list of strings in File A and compare with File B, C and write to a output file in CSV format

Hi Friends, I'm a great fan of this forum... it has helped me tone my skills in shell scripting. I have a challenge here, which I'm sure you guys would help me in achieving... File A has a list of job ids and I need to compare this with the File B (*.log) and File C (extend *.log) and copy... (6 Replies)
Discussion started by: asnandhakumar
6 Replies
Login or Register to Ask a Question