Sponsored Content
Full Discussion: AWK Problem
Top Forums UNIX for Dummies Questions & Answers AWK Problem Post 67614 by gseyforth on Thursday 24th of March 2005 01:40:36 PM
Old 03-24-2005
Error AWK Problem

Hi,

I posted something here about this yesterday but I can't seem to
find it. I needed help writting a script which would append a file
with new lines after every so many charachters.

Example: (my original flat file)

L60 LETTER OF CREDIT 60 DAYS W00 ON RECEIPT WIRE TRANSFER W30 NET 30 WIRE TR
ANSFER W45 NET 45 WIRE TRANSFER W60 NET 60 WIRE TRANSFER

I need to look like this:

L60 LETTER OF CREDIT 60 DAYS
W00 ON RECEIPT WIRE TRANSFER
W30 NET 30 WIRE TRANSFER
W45 NET 45 WIRE TRANSFER
W60 NET 60 WIRE TRANSFER

Basically, I needed a script that inserted a new line after so many chars.

This is the script someone helped me out with:

====
#!/usr/bin/nawk -f
#
###fold.awk
#

{
if (!width) width=31;
line = $0;
do {
newline = substr(line, 0, width);
if (newline !~ "^[ \t]*$") { print newline }
line = substr(line, width+1);
}
while (length(line) > 1);
}
====

This works great! However, now I'm having a problem with "line too long"
errors with extremely large files:

nawk: input record `0101100010HORSES AND...' too long
source line 16 of file /usr/local/bin/fold.awk

I know there is a limit in awk. Also, from the post from yesterday, someone
was really pushing an SED script. Can SED handle large lines?

Does someone know if I can do this another way or with the same
script? This is a hot one for me.

Thank you for this great board!

Thanks!
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Problem with AWK

Hi all, How can i use the below unix command in AWK . Can any one please suggest me how i can use. sed -e "s/which first.sh/which \$0/g" $shell > $shell.sal where $0=current program name(say current.sh) $shell=second.sh (1 Reply)
Discussion started by: krishna_gnv
1 Replies

2. Shell Programming and Scripting

Problem with AWK

Hi All, How can i store a value of the unix command executed in AWK with system command. devise=`cut -c1-3 dvgp.txt` I wrote this command in awk as awk'{ code= sprintf("devise=`cut -c1-3 dvgp.txt`"); system(code); }' Is this correct. can you please suggest me how the code can be... (1 Reply)
Discussion started by: krishna_gnv
1 Replies

3. Shell Programming and Scripting

problem using awk

Hi there every body I'm new to shell scripting and there is a problem facing me,, please look at the following piece of code: awk ' BEGIN{ FS="<assertion id=\1"; RS="<assertion id=\"2"}/<assertion id=\"1/{print FS$2 > "/home/ds2/test/output.txt"} ' filename all I wanna do is to... (6 Replies)
Discussion started by: senior_ahmed
6 Replies

4. Shell Programming and Scripting

Awk problem: How to express the single quote(') by using awk print function

Actually I got a list of file end with *.txt I want to use the same command apply to all the *.txt Thus I try to find out the fastest way to write those same command in a script and then want to let them run automatics. For example: I got the file below: file1.txt file2.txt file3.txt... (4 Replies)
Discussion started by: patrick87
4 Replies

5. Shell Programming and Scripting

Problem with awk awk: program limit exceeded: sprintf buffer size=1020

Hi I have many problems with a script. I have a script that formats a text file but always prints the same error when i try to execute it The code is that: { if (NF==17){ print $0 }else{ fields=NF; all=$0; while... (2 Replies)
Discussion started by: fate
2 Replies

6. Shell Programming and Scripting

awk problem

Find the number of files with sizes > 100KB in /, /bin, /usr, /usr/bin and /usr/sbin directories and output them in a two column format with the name of the directory and the number of files. i tried with awk $>ls -lh | awk '/^-/ && $5 >= 100k {print $8 $5}' but it is not working pls tell... (3 Replies)
Discussion started by: abhikamune
3 Replies

7. UNIX for Dummies Questions & Answers

Little problem with AWK

I thought I had solved this problem but after testing the script I came to realize that it is not doing what I need. So, here it goes again. This is the code: awk '/\>/{F=$2; N=$3; split(FILENAME, A, "."); getline; x = ">"}{print ">" A"-" x++" "F" " N"\n" $0}' This is the input file: ... (5 Replies)
Discussion started by: Xterra
5 Replies

8. Shell Programming and Scripting

awk problem - combining awk statements

i have a datafile that has several lines that look like this: 2,dataflow,Sun Mar 17 16:50:01 2013,1363539001,2990,excelsheet,660,mortar,660,4 using the following command: awk -F, '{$3=strftime("%a %b %d %T %Y,%s",$3)}1' OFS=, $DATAFILE | egrep -v "\-OLDISSUES," | ${AWK} "/${MONTH} ${DAY}... (7 Replies)
Discussion started by: SkySmart
7 Replies

9. Shell Programming and Scripting

awk problem

i have an email list in file.txt with comma separated line1 - FIELD1,pippo@gmail.com,darth@gmail.com line2 - FIELD2,pippo@gmail.com,darth@gmail.com,sampei@gmail.com output=(awk -F ',' -v var="$awkvar" '$1==var {print $2,$3,$4}' spreadsheet.txt)but awk delete some letters at the... (8 Replies)
Discussion started by: pasaico
8 Replies

10. Shell Programming and Scripting

awk problem

Hi I have two columns and I would like to create a third column based on how many lines away from a value of 1 in column 2, for example I have 1,0 2,0 3,0 4,0 5,0 6,1 7,0 8,0 9,0 10,0 11,1 And I want an output (6 Replies)
Discussion started by: garethsays
6 Replies
FOLD(1) 						    BSD General Commands Manual 						   FOLD(1)

NAME
fold -- fold long lines for finite width output device SYNOPSIS
fold [-bs] [-w width] [file ...] DESCRIPTION
The fold utility is a filter which folds the contents of the specified files, or the standard input if no files are specified, breaking the lines to have a maximum of 80 columns. The options are as follows: -b Count width in bytes rather than column positions. -s Fold line after the last blank character within the first width column positions (or bytes). -w width Specify a line width to use instead of the default 80 columns. The width value should be a multiple of 8 if tabs are present, or the tabs should be expanded using expand(1) before using fold. ENVIRONMENT
The LANG, LC_ALL and LC_CTYPE environment variables affect the execution of fold as described in environ(7). SEE ALSO
expand(1), fmt(1) STANDARDS
The fold utility conforms to IEEE Std 1003.1-2001 (``POSIX.1''). BUGS
If underlining (see ul(1)) is present it may be messed up by folding. BSD
December 15, 2006 BSD
All times are GMT -4. The time now is 11:36 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy