File Processing in shell script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting File Processing in shell script
# 1  
Old 04-29-2010
File Processing in shell script

i have a file with following type of data
Code:
abcd :  gggggg
gggggg ; 1234
gggggg ; 5678
gggggg ; 3434
gggggg ; 6565
gggggg ; 1231
 
1234 ; vvvv ;Eng=Myfirstname 
5678 ; xyzf  ;Eng=Mysecondname 
3434 ; xyzf  ;Eng=Mythirdname 
6565 ; xyzf  ;Eng=Mysfourthname 
1231 ; xyzf  ;Eng=Mysfifthname

now i want to create another file which will read the above file and have the above data in following format

Code:
gggggg 1234 Myfirstname
gggggg 5678 Mysecondname 
gggggg 3434 Mythirdname 
gggggg 6565 Mysfourthname
gggggg 1231 Mysfifthname

any help with the code is highly appreciated
Thanks

Last edited by zaxxon; 04-29-2010 at 06:11 AM.. Reason: use code tags please, ty
# 2  
Old 04-29-2010
Not sure if you have to respond on different conditions - I left out the 2nd block with the leading g's
Quote:
gggggg ; 1234
gggggg ; 5678
gggggg ; 3434
gggggg ; 6565
gggggg ; 1231
Code:
$> tr -d " " < infile| awk -F"[:;=]" '/^abcd/ {p=$2; next} /^[0-9]+/ {print p,$1,$4}'
gggggg 1234 Myfirstname
gggggg 5678 Mysecondname
gggggg 3434 Mythirdname
gggggg 6565 Mysfourthname
gggggg 1231 Mysfifthname



---------- Post updated at 12:13 PM ---------- Previous update was at 12:12 PM ----------

Oh and moving this to the shell scripting area - has nothing to do with UNIX and Linux Applications in particular and you might get more versatile answers.
# 3  
Old 04-30-2010
Code:
while(<DATA>){
	chomp;
	my @tmp = split(/[:;=]/,$_);
	map {s/\s*//g} @tmp;
	if($tmp[1]=~/\d+/){
		$arr[$tmp[1]]=$_;
	}
	elsif($tmp[0]=~/\d+/){
		my $tmp = $arr[$tmp[0]].";". $tmp[3]."\n";
		$tmp =~ s/\s*;\s*/ /g;
		print $tmp;
	}
}
__DATA__
abcd :  gggggg
gggggg ; 1234
gggggg ; 5678
gggggg ; 3434
gggggg ; 6565
gggggg ; 1231
 
1234 ; vvvv ;Eng=Myfirstname 
5678 ; xyzf  ;Eng=Mysecondname 
3434 ; xyzf  ;Eng=Mythirdname 
6565 ; xyzf  ;Eng=Mysfourthname 
1231 ; xyzf  ;Eng=Mysfifthname

# 4  
Old 04-30-2010
File Processing in Shell Script

Hi all ,

Thanks for your replys ...
# 5  
Old 04-30-2010
File Processing in Shell Script

now i have another problem.
if in my file i have reocrd in following format

Code:
5812                                                                            ;USD
    ;Y;N;Y;GEMS_                                                                        ;
               ;                                                                                ;
                    ;                                                                                ;
                         ;DefaultParent=abc                                                                     ;English=Airbaloon xyzz

ie the record is in spread in 3 line and when i do grep on it only returns me the 1st line , how can i get the whole record line

Last edited by zaxxon; 04-30-2010 at 04:38 AM.. Reason: code tags
# 6  
Old 04-30-2010
Well, it's not a record line, it's multiple lines. I take it that lines beginning with ; are continuations and everything else is a new line?

Code:
#!/bin/bash

STR=""
while IFS="" read LINE
do
        [ -z "${LINE}" ] && continue

        if [ ! "${LINE:0:1}" = ";" ]
        then
                echo "${STR}"
                STR="${LINE}"
                continue
        fi

        STR="${STR}${LINE}"
done

echo "${STR}"

# 7  
Old 05-04-2010
Handling Special charahter in array

HI,

i have to declare the array as shown below

Code:
set -A  tech radio television mobile Engery&acc

it is giving me error for the value in bold above.

how will i add the Engery&acc value in array to be one string.

any help will be highly appreciated
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to log file processing details to database table usnig UNIX shell script?

we are getting files on daily basis.we need to process these files. i need a unix shell script where we can count 1-The no of files processed 2-No of data/record processed for each files. The script should log these details into a database table. If there is any error while file... (3 Replies)
Discussion started by: Atul kumar
3 Replies

2. Shell Programming and Scripting

Shell script for .Txt to .csv conversion with data processing

Hi experts, I want to convert a txt file having rows and columns (CNAI_DUMP_raw.txt) by comparing it with another text file (paramaters.txt) and generate a output in CSV which contains only 3rd column from CNAI_DUMP_raw.txt, and the columns mentioned in parameters.txt. FYI: There are two... (16 Replies)
Discussion started by: Gautam Banerjee
16 Replies

3. Programming

awk processing / Shell Script Processing to remove columns text file

Hello, I extracted a list of files in a directory with the command ls . However this is not my computer, so the ls functionality has been revamped so that it gives the filesizes in front like this : This is the output of ls command : I stored the output in a file filelist 1.1M... (5 Replies)
Discussion started by: ajayram
5 Replies

4. Shell Programming and Scripting

Help with shell script for url processing

Hi, My objective is to make a shell script that, when run, you can input multiple links at once. text is then inserted between the http:// part and the following url. example : http://google.be ==> http://sometext.google.be it would be great if it could then open all the created links (wich... (5 Replies)
Discussion started by: tooster
5 Replies

5. Shell Programming and Scripting

2 file processing script in C shell

I want to use an awk for the following scenario but not sure if it will work or not. I have two input file: F1 and F2 F1 02 05 08 F2 00 01 02 03 04 05 06 07 08 09 10 (1 Reply)
Discussion started by: jclanc8
1 Replies

6. Shell Programming and Scripting

Shell Script syntax for XML processing

Hi All, I am new to Shell scripting. I have a log file containing XML Messages.Each XML Message is accompanied with a timestamp.I need to count the the number of messages that get logged in a particular timeinterval.Is there any command/Syntax to achieve this. Any code/example is... (5 Replies)
Discussion started by: vignesh53
5 Replies

7. Shell Programming and Scripting

Processing a file in shell

I have a file which is having enrties like entry-id 1 ABC : value DEF :value GHI :VALUE entry-id 2 ABC : value DEF :value GHI :VALUE entry-id 2 ABC : value DEF :value GHI :VALUE and so on .. .wht i want to do is (1 Reply)
Discussion started by: msbinu
1 Replies

8. Shell Programming and Scripting

Shell script not processing if statement properly

Hi I am trying to create a shell script that will look for a contracthead file first and if the contract head file does not exist on day1 exit script. Now on day2 if contracthead exists or not run the script uploading files in order such as contract line then contract contact so the... (2 Replies)
Discussion started by: jonathan184
2 Replies

9. Shell Programming and Scripting

Have a shell script check for a file to exist before processing another file

I have a shell script that runs all the time looking for a certain type of file and then it processes the file through a series of other scripts. The script is watching a directory that has files uploaded to it via SFTP. It already checks the size of the file to make sure that it is not still... (3 Replies)
Discussion started by: heprox
3 Replies
Login or Register to Ask a Question