understanding awk in this script


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users understanding awk in this script
# 1  
Old 09-15-2010
understanding awk in this script

i am analyzing a query written by another developer ,need to understand part of script
am looking at a code ..and it converts comma files to pipe delimited and also takes away quotes from any columns,
source field format: 2510,"Debbie",NewYork
changes to
target: 2510|Debbie|NewYork

*************Script********
Line 1 cat $out_location/BACI_1000|\
Line 2 awk -v sep=' "" ' \ {
Line 3for (i=1;i<=length($0);i++)
Line 4 {ch=substr($0,i,1)
Line 5if (ch==sep)(inside-!inside}
Line 6if (inside&&ch=="|")
Line 7ch=","
Line 8 printf("%s".ch)
Line 9}
Line 10printf("\n")
Line 11}'>$out_location/aci_10temp

i am not sure why in line 1 is BACI_1000| with a pipe is referred instead of only ACI_1000
line 2 : what is SEP i know IFS is used for field separator ..is it same..also same line why is back slash used before curly brackets
line3:think it searches for lenght of column what does $0 refer here.. i know it refers to command itself in general but not clear
line 4:check for length of column in field 1
line 5:did not understand...(what is inside?)
line 6:did not understand
line 7: did not understand
line 8:does it print the column after removing quotes
# 2  
Old 09-15-2010
please indent the code and use [CODE] tags
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Shall script use and understanding

Below script is called as Reducer, I am not sure how it work, can some expert explain me what this script does as i am a beginner. inputfile: hi hi how are are you code: #!/bin/bash lastkey=""; -- what does this mean, because i saw in debug mode it is taking value as hi count=0;... (13 Replies)
Discussion started by: mirwasim
13 Replies

2. Shell Programming and Scripting

Understanding awk 'expansion'

Heyas Recently i wanted to help someone with an awk script, but the end-script didnt work as expected. He wanted, if HOME was empty, to get the HOME of the current USER from /etc/passwd. At first i tried hardcoded with root: awk -F: '/^root/ {print $6}' /etc/passwd As that worked, i've... (4 Replies)
Discussion started by: sea
4 Replies

3. Shell Programming and Scripting

awk : Need Help in Understanding a command

Hello I am working on a Change request and Stuck at a point. The below awk command is used in the function. float_test ( ) { echo | awk 'END { exit ( !( '"$1"')); }' } I understand that awk 'END' is used to add one line at the end and exit is used to end the script with an error... (4 Replies)
Discussion started by: rahul2662
4 Replies

4. UNIX for Dummies Questions & Answers

Understanding awk

I found this on an awk site and would like to know what it does: /CARS/{x="";next} {if(x)print x;x=$0} END{if(x)print x}' Does it mean if it finds the word cars it skips that line and then prints the next one? (4 Replies)
Discussion started by: newbie2010
4 Replies

5. Shell Programming and Scripting

Help in Understanding awk if ( F ) syntax -

Hi Experts, I was looking at the below link, for finding words next to it, And unable to understand this syntax: Can any one please explain , what is meaning of this code: if ( F ) s = s ? s OFS $i : $i from:... (4 Replies)
Discussion started by: rveri
4 Replies

6. Shell Programming and Scripting

Help in understanding awk expression

Hi, Could somebody help me in understanding the following awk expression: awk -v n="POINT" '/%/{print $0 "\n" n ;next}1' < file name Thanks, Arun (6 Replies)
Discussion started by: arun_maffy
6 Replies

7. UNIX for Dummies Questions & Answers

Understanding / Modifying AWK command

Hey all, So I have an AWK command here awk '{if(FNR==NR) {arr++;next} if($0 in arr) { arr--; if (arr == 0) delete arr;next}{print $0 >"list2output.csv"}} END {for(i in arr){print i >"list1output.csv"}}' list1 list2 (refer to image for a more readable format) This code was submitted... (1 Reply)
Discussion started by: Aussiemick
1 Replies

8. UNIX for Dummies Questions & Answers

understanding part of an awk script

Hi I have an awk script running in ksh in which a section of code is picking out the datetime as follows: dia=`echo $starttime | nawk '{ printf "%02d\n", substr($1,9,2)}'` mes=`echo $starttime | nawk '{ printf "%02d\n", substr($1,6,2)}'` ano=`echo $starttime | nawk '{ printf "%02d\n",... (3 Replies)
Discussion started by: shajju
3 Replies

9. Shell Programming and Scripting

Understanding Awk and Cat

Hi Guys, I was recently come across some code to hopefully learn a little bit about putting Shell commands into PHP application to run on a Linux server. However, I don't understand the command AT ALL... and was wondering if anyone can interpret it: cat userIDs.dat | awk '{s=s+1; if... (1 Reply)
Discussion started by: jordRiot
1 Replies

10. Shell Programming and Scripting

Need help on understanding the Shell and AWK scripts

Hello Friends, I am new to the scripting & have to analyze bunch of regular production scripts. It has .ksh which calls on the .awk script having many functions I need to understand and debug the scripts ASAP Can anybody please let me know as how can I debug, I want to see the flow of code... (3 Replies)
Discussion started by: amberj123
3 Replies
Login or Register to Ask a Question