Visit Our UNIX and Linux User Community


can anyone explain this codes here?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting can anyone explain this codes here?
# 1  
Old 01-20-2006
can anyone explain this codes here?

nawk 'FNR > 3 {printf("%s%c", $0, OFS)}END{print ""}' "$1" > "$1".out && mv "$1
".out "$1"

what is FNR? or printf("%s%c",$0, OFS)}?

sorry..im lost...
# 2  
Old 01-20-2006
The FNR variable contains the number of lines read, but is reset for each file read. The NR variable accumulates for all files read. Therefore if you execute an awk script with two files as arguments, with each containing 10 lines:

nawk '{print NR}' file file2
nawk '{print FNR}' file file2


the first program would print the numbers 1 through 20, while the second would print the numbers 1 through 10 twice, once for each file.


printf is used to print the output into the file instead of screen. inside the printf %s is used for string printing and %c is used for character printing. that is $0 as string and OFS is out field separator as character other then space which is default.
# 3  
Old 01-20-2006
Joins all lines starting at line 4

FNR > 3 { ... }
Execute code ... starting at line 4 of currrent file.
Lines 1 to 3 are ignored.
FNR = The number of the current input record in the current file

printf("%s%c",$0, OFS)}
Print current input record followed by record separator (no line feed at end)
OFS = The output field separator (default is a space)

END{ ... }
Execute code ... when all input records has been read

print ""
Print only one line feed


Input file:
line1
line2
line3
line4
line5

Result file (one record length):
line4 line4

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Return Codes...

Not sure if this is of any use but...... I was messing around with getting return codes greater than 255 for special usage... Of course the code could be made simple but in this code the new stored return code is generated as exit is progressing... #!/bin/sh # Real and imaginary return... (9 Replies)
Discussion started by: wisecracker
9 Replies

2. Linux

Exit codes

I am trying to run this SH on Linux and getting error at IF condition. I want to read the EXIT code and send the failure or success message. Please help me on this. This worked when i was running on Solaris. #!/bin/bash $ORACLE_HOME/bin/sqlplus abc/xyz@qwe @/home/test.sql if ;... (4 Replies)
Discussion started by: rlmadhav
4 Replies

3. AIX

Warning codes

Dear Experts, i am very to AIX when i am trying to compile my code i am getting two warning several times like 1540-0053 (W) The declaration of a class member within the class definition must not be qualified. "/usr/include/alloca.h", line 34.9: 1540-1401 (I) An unknown "pragma __alloca" is... (1 Reply)
Discussion started by: vin_pll
1 Replies

4. Shell Programming and Scripting

Exit Codes

Good Morning All.. I was wondering about getting exit codes of a command in a shell script. I'm trying to run uvscan (McAfee command line scanner) and I want to have the log file say why, if at all, the process failed/exited. Something to the extent of If ; then echo "This is why it... (1 Reply)
Discussion started by: cmschube
1 Replies

5. Shell Programming and Scripting

help with return codes

Hi In an unix script I am using an Perl one liner perl -i -ne '-----' If the perl one liner fails i am not able to catch the return code. It always give 0 as return code. Can you tell me how can i catch the return code perl -i -ne '---' RETCODE=$? echo $RETCODE Thanks and Regards Ammu (2 Replies)
Discussion started by: ammu
2 Replies

6. UNIX for Advanced & Expert Users

Return Codes

I have a simple script which renames a file.How do i capture the return code of the script if the script fails (3 Replies)
Discussion started by: kris01752
3 Replies

7. UNIX for Advanced & Expert Users

Know any good codes?

Know any good codes? (2 Replies)
Discussion started by: fgjiu
2 Replies

8. UNIX for Dummies Questions & Answers

Return codes

Hi, Can anyone tell me if there are return codes for SFTP? If so how would you capture them? I've tried 'man sftp' but its not particularly helpful. Many thanks Helen :confused: (4 Replies)
Discussion started by: Bab00shka
4 Replies

9. UNIX for Dummies Questions & Answers

Help with Return codes

I have the below script I am running on a Solaris system to check the status of a Tivoli Workload Scheduler job and return the status. We need this script to return a '0' if any of the jobs in the stream are in a "EXEC" state and an "1" if in a "HOLD" state. I am not a programmer so I am not sure... (1 Reply)
Discussion started by: leezer1204
1 Replies

10. Programming

exit codes

Where can a locate a list of Unix exit codes? thank you, Donna (3 Replies)
Discussion started by: donna carter
3 Replies

Featured Tech Videos