Sponsored Content
Full Discussion: Max column count in a file
Top Forums Shell Programming and Scripting Max column count in a file Post 54772 by gemini on Tuesday 24th of August 2004 02:01:59 AM
Old 08-24-2004
Max column count in a file

I have to send a file to mainframe and before sending it, I have to execute the quote command to set the record length.
Since the file is dynamic, I do not know what the maximum size of a line could be.

Currently, I use the following function to get the Max Column Count. Since I use "sed" it takes a long time for big files.

GetMaxCols()
{
MAX_COL_SIZE=0
for line in `cat $1 | sed "s! !~!g"`
do
COL_COUNT=`echo $line | wc -c`
if [ "$COL_COUNT" -gt "$MAX_COL_SIZE" ]; then
MAX_COL_SIZE=$COL_COUNT
fi
done
echo $MAX_COL_SIZE
}


Any better ways to achieve this goal ?

Thanks in advance.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

count the max by awk

hey everybody .. I have a problem when I use this command to count the Max number by awk it give to me 99 while there are numbers bigger than 99 awk 'NR==0 { temp = $0 ;next} { if ( $0 >= temp ) { temp=$0 } } END{ print "Maximum Number:"temp""}' file thank you for your help... (9 Replies)
Discussion started by: halola85
9 Replies

2. Shell Programming and Scripting

How to collect count of a column from log file??

Hi All, I have an Output from a log file which is something like as follows.. ***** CDR and SDR Statistics**** Wed Feb 25 00:05:00 EST 2009 *********CDR and SDR QUEUE STATUS***** Queue busy wait msgs cdr 2 2 4 sdr ... (3 Replies)
Discussion started by: nirmal84
3 Replies

3. Shell Programming and Scripting

Search max value in a column in a file instead of sort

Hi Everyone, 1.txt 00:00:00 0 0 0 0 0 0 0 00:00:01 0 0 0 2 1 33 2 00:00:02 5 0 0 0 0 0 0 00:00:03 0 4 0 0 0 0 0... (5 Replies)
Discussion started by: jimmy_y
5 Replies

4. Shell Programming and Scripting

loop in awk - column max for each column

Hello all, this should really be easy for you... I need AWK to print column maxima for each column of such input: Input: 1 2 3 1 2 1 1 3 2 1 1 2 Output should be: 2 2 3 3 This does the sum, but i need max instead: { for(i=1; i<=NF; i++) sum +=$i } END {for(i=1; i in sum;... (3 Replies)
Discussion started by: irrevocabile
3 Replies

5. Shell Programming and Scripting

Count time min/max/average for ping

I am redirecting my ping output to a file. The sample output is like this: 64 bytes from xx.xx.xx.167: icmp_seq=4490 ttl=116 3.75 ms 2011Jul12- 15 40 16 64 bytes from xx.xx.xx.167: icmp_seq=4491 ttl=116 5.29 ms 2011Jul12- 15 40 17 64 bytes from xx.xx.xx.167: icmp_seq=4492 ttl=116 4.88 ms... (6 Replies)
Discussion started by: zorrox
6 Replies

6. Shell Programming and Scripting

How to find the average,min,max ,total count?

Hi , Below is my sample data,I have this 8 column(A,B,C,D,E,F,G,H) in csv file. A , B ,C ,D ,E ,F,G ,H 4141,127337,24,15,20,69,72.0,-3 4141,128864,24,15,20,65,66.0,-1 4141,910053,24,15,4,4,5.0,-1 4141,910383,24,15,22,3,4.0,-1 4141,496969,24,15,14,6,-24.0,-18... (7 Replies)
Discussion started by: vinothsekark
7 Replies

7. Shell Programming and Scripting

AWK script to create max value of 3rd column, grouping by first column

Hi, I need an awk script (or whatever shell-construct) that would take data like below and get the max value of 3 column, when grouping by the 1st column. clientname,day-of-month,max-users ----------------------------------- client1,20120610,5 client2,20120610,2 client3,20120610,7... (3 Replies)
Discussion started by: ckmehta
3 Replies

8. Shell Programming and Scripting

Count column data in a text file

I have a text file that has the following column data: 0.007 0.005 0.004 0.007 How do i output the total sum of the data above? (6 Replies)
Discussion started by: alegnagrp
6 Replies

9. Shell Programming and Scripting

Count of occurrence in particular column of the file.

Hi All, let's say an input looks like: C1,C2,C3,C4,C5,C6,C7,C8,C9,C10,C11 ---------------------------------- 1|0123452|C501|Z|Z|Z|E|E|E|E|E|E|E 1|0156123|C501|X|X|X|E|E|E|E|E|E|E 1|0178903|C501|Z|Z|Z|E|E|E|E|E|E|E 1|0127896|C501|Z|Z|Z|E|E|E|E|E|E|E 1|0981678|C501|X|X|X|E|E|E|E|E|E|E ... (6 Replies)
Discussion started by: suresh_target
6 Replies

10. UNIX for Beginners Questions & Answers

How to count average and max respon time?

sorry i will revise first (1 Reply)
Discussion started by: fajar_3t3
1 Replies
fold(1) 						      General Commands Manual							   fold(1)

NAME
fold - fold long lines for finite width output device SYNOPSIS
width] [file ...] Obsolete form: width] [file ...] DESCRIPTION
The command is a filter that folds the contents of the specified files, breaking the lines to have a maximum of width column positions (or bytes, if the option is specified). The command breaks lines by inserting a newline character so that each output line is the maximum width possible that does not exceed the specified number of column positions (or bytes). A line cannot be broken in the middle of a char- acter. If no files are specified or if a file name of is specified, the standard input is used. The command is often used to send text files to line printers that truncate, rather than fold, lines wider than the printer is able to print. If the backspace, tab, or carriage-return characters are encountered in the input, and the option is not specified, they are treated spe- cially as follows: Backspace The current count of line width is decremented by one, although the count never becomes negative. Thus, the char- acter sequence character-backspace-character counts as using one column position, assuming both characters each occupy a single column position. does not insert a newline character immediately before or after any backspace character. Tab Each tab character encountered advances the column position pointer to the next tab stop. Tab stops are set 8 col- umns apart at column positions 1, 9, 17, 25, 33, etc. Carriage-return The current count of line width is set to zero. does not insert a newline character immediately before or after any carriage-return character. Note that may affect any underlining that is present. Options The command recognizes the following options and command-line arguments: Count width in bytes rather than in column positions. Break the line on the last blank character found before the specified number of column positions (or bytes). If none are found, break the line at the specified line length. Specify the maximum line length, in column positions (or bytes if is specified). The default value is 80. width should be a multiple of 8 if tabs are present, or the tabs should be expanded using before processing by (see expand(1)). The option is obsolescent and may be removed in a future release. EXTERNAL INFLUENCES
Environment Variables determines the interpretation of text as single- and/or multi-byte characters. determines the language in which messages are displayed. If or is not specified in the environment or is set to the empty string, the value of is used as a default for each unspecified or empty variable. If is not specified or is set to the empty string, a default of "C" (see lang(5)) is used instead of If any internationalization variable contains an invalid setting, behaves as if all internationalization variables are set to "C". See environ(5). International Code Set Support Single- and multi-byte character code sets are supported. SEE ALSO
expand(1). STANDARDS CONFORMANCE
fold(1)
All times are GMT -4. The time now is 03:05 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy