Sponsored Content
Top Forums Shell Programming and Scripting AWK limit for (length) function? Post 302312854 by durden_tyler on Sunday 3rd of May 2009 10:57:14 PM
Old 05-03-2009
Quote:
Originally Posted by CKT_newbie88
I am trying to use the following code:

awk '{s=$0;if(length(s) < 750){getline; s=s " " $0}printf("%s\n",s)}' filename

but an error shows that 'awk' is too long. Is there a limit to the awk length function? and what could be an alternate solution for long fixed width records?
An alternate solution for long records could be perl. Unlike *awk, it does not impose any limitation on size of input records. You are only limited by the memory in your system.

Code:
$
$ cat input.txt
12345abcdeMy
name
is
Jack SmitSVY01
23456fghijMy name is
John SmitSVY02
34567klmnoMy name is Cole SmitSVY03
45678pqrstMy name is
Dave
SmitSVY04
56789uvwxyMy name is Eric
SmitSVY05
$
$ perl -ne '{
>   if (length($_) < 36) {chomp; $buf=$buf." ".$_;
>     if (length($buf) == 36) {print substr($buf,1),"\n"; $buf="";}}
>   else {print}
> }' input.txt
12345abcdeMy name is Jack SmitSVY01
23456fghijMy name is John SmitSVY02
34567klmnoMy name is Cole SmitSVY03
45678pqrstMy name is Dave SmitSVY04
56789uvwxyMy name is Eric SmitSVY05
$
$

tyler_durden
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

grep line length limit

Hi Friends, I am having a funny problem with grep. When I run grep 'expr' file.txt things work fine. But when try to get the line number using the -n option, i.e, grep -n 'expr' file.txt I get a message, "grep: 0652-226 Maximum line length of 2048 exceeded." If the line has more than... (3 Replies)
Discussion started by: hnhegde
3 Replies

2. UNIX for Advanced & Expert Users

length function

Hi,:cool: can any body tell me what is the function to get the length of a string in unix?I have used functions like len,length,strlen, but they are not working. cheers RRK (3 Replies)
Discussion started by: ravi raj kumar
3 Replies

3. AIX

Is the Length of User ID for AIX Limit to 8 Characters?

Hi, I'm using AIX version 5.3 currently. I'm trying to create a user id, e.g. andyleong, which the system prompted the length is too long. 1. I would like to know is that the length of user id is limited to maximum 8 characters for AIX. 2. Is it apply to all versions of AIX? If no... (2 Replies)
Discussion started by: meihua_t
2 Replies

4. UNIX for Dummies Questions & Answers

limit of command length

Hi! Can you please help me with one question? Does rexec command have some limitation of the length of the deliveded cmd? Thanks in advance, Anta (2 Replies)
Discussion started by: Anta
2 Replies

5. Cybersecurity

~ IPTables : Limit Incoming UDP Packets With a Certain Length ~

Hello, I am currently trying to limit incoming UDP length 20 packets on a per IP basis to 5 a second using IPTables on a Linux machine (CentOS 5.2). Basically, if an IP is sending more than 5 length 20 UDP packet a second to the local machine, I would like the machine to drop the excess... (1 Reply)
Discussion started by: tomboy123
1 Replies

6. 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

7. Programming

Is there a limit for a code line length in C?

Is there any stabdard limitation on size of a code line in C code? I am interesting in UNIX limitation, particulary on SUN. Thanks! (8 Replies)
Discussion started by: alex_5161
8 Replies

8. Shell Programming and Scripting

Limit string length with sed

Hi. I'm trying to learn sed. I want to limit the length of a string. I tried this: sed -n 's/^\(...........................\).*/\1/p' textfile.txt This works fine, but how do I give it as a range rather than putting a hundred dots? I'd like to limit the number of characters to 144 for... (3 Replies)
Discussion started by: troglodytes
3 Replies

9. Shell Programming and Scripting

Need help on awk for printing the function name inside each function

Hi, I am having script which contains many functions. Need to print each function name at the starting of the function. Like below, functionname() { echo "functionname" commands.... } I've tried like below, func=`grep "()" scriptname | cut -d "(" -f1` for i in $func do nawk -v... (4 Replies)
Discussion started by: Sumanthsv
4 Replies

10. Web Development

Function check_badges($color, $uid, $limit = 300, $_DEBUG = true)

Here is the first draft PHP function to check badges: <?php function check_badges($color, $uid, $limit = 300, $_DEBUG = true) { /* * check_badges() version 0.1 by Neo 9 Jan 2019 * $_COOKIE is not used in this server-side code * but may be used in the browser. ... (0 Replies)
Discussion started by: Neo
0 Replies
ERR_error_string(3)						      OpenSSL						       ERR_error_string(3)

NAME
ERR_error_string, ERR_error_string_n, ERR_lib_error_string, ERR_func_error_string, ERR_reason_error_string - obtain human-readable error message SYNOPSIS
#include <openssl/err.h> char *ERR_error_string(unsigned long e, char *buf); char *ERR_error_string_n(unsigned long e, char *buf, size_t len); const char *ERR_lib_error_string(unsigned long e); const char *ERR_func_error_string(unsigned long e); const char *ERR_reason_error_string(unsigned long e); DESCRIPTION
ERR_error_string() generates a human-readable string representing the error code e, and places it at buf. buf must be at least 120 bytes long. If buf is NULL, the error string is placed in a static buffer. ERR_error_string_n() is a variant of ERR_error_string() that writes at most len characters (including the terminating 0) and truncates the string if necessary. For ERR_error_string_n(), buf may not be NULL. The string will have the following format: error:[error code]:[library name]:[function name]:[reason string] error code is an 8 digit hexadecimal number, library name, function name and reason string are ASCII text. ERR_lib_error_string(), ERR_func_error_string() and ERR_reason_error_string() return the library name, function name and reason string respectively. The OpenSSL error strings should be loaded by calling ERR_load_crypto_strings(3) or, for SSL applications, SSL_load_error_strings(3) first. If there is no text string registered for the given error code, the error string will contain the numeric code. ERR_print_errors(3) can be used to print all error codes currently in the queue. RETURN VALUES
ERR_error_string() returns a pointer to a static buffer containing the string if buf == NULL, buf otherwise. ERR_lib_error_string(), ERR_func_error_string() and ERR_reason_error_string() return the strings, and NULL if none is registered for the error code. SEE ALSO
err(3), ERR_get_error(3), ERR_load_crypto_strings(3), SSL_load_error_strings(3) ERR_print_errors(3) HISTORY
ERR_error_string() is available in all versions of SSLeay and OpenSSL. ERR_error_string_n() was added in OpenSSL 0.9.6. 0.9.7a 2000-09-14 ERR_error_string(3)
All times are GMT -4. The time now is 07:02 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy