Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Display all the words whose length is equal to the longest word in the text Post 302547119 by yazu on Sunday 14th of August 2011 05:55:23 AM
Old 08-14-2011
It's impossible to do with pipes - you need read all lines to find out the maximum length and then print saved lines which matches the maximum. Awk is a good tool for it - you read lines, save those with the current maximum and after processing you print all lines with the real maximum:
Code:
tr -s " .,;" "\n" <random.txt | awk 'length($0) >= max { a[$0]++; max = length($0) }
END {
  for (s in a) if (length(s) == max) print s
}'

Or a little better:
Code:
... awk '                                          
length($0)  > max { a[$0]++; max = length($0) }
length($0) == max { a[$0]++ }
END {                                       
  for (s in a) if (length(s) == max) print s
}'


Last edited by yazu; 08-14-2011 at 07:07 AM.. Reason: Corrected a bug and added a better version
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

in sed ,to get longest word

i want the longest word from the file using sed. can any one help me in this case? (6 Replies)
Discussion started by: lakshmananindia
6 Replies

2. Shell Programming and Scripting

Find the length of the longest line

Dear All, To find the length of the longest line from a file i have used wc -L which is giving the proper output... But the problem is AIX os does not support wc -L command. so is there any other way 2 to find out the length of the longest line using awk or sed ? Regards, Pankaj (1 Reply)
Discussion started by: panknil
1 Replies

3. Shell Programming and Scripting

Display most top 10 occurring words along with number of ocurences of word inthe text

I need Display the most top 10 occurring words along with the number of occurences of those words in the given text. Sample text as below: "The Travails of Single South Indian men of conservative upbringing" or "Why we don't get any..." Yet another action packed weekend in Mumbai, full of... (2 Replies)
Discussion started by: smacherla
2 Replies

4. Shell Programming and Scripting

Display text between two words/characters

Using sed or awk, I need to display text between two words/characters. Below are two example inputs and the desired output. In a nutshell, I need the date-range value between the quotes (but only the first occurance of date-range as there can be more than one). Example One Input: xml-report... (1 Reply)
Discussion started by: cmichaelson
1 Replies

5. Shell Programming and Scripting

Longest length of string in array

I would be grateful if someone could help me. I am trying to write a .sh script in UNIX. I have the following code; User=john User=james User=ian User=martin for x in ${User} do print ${#x} done This produces the following output; 4 5 3 6 (12 Replies)
Discussion started by: mmab
12 Replies

6. Shell Programming and Scripting

Longest word in a file

I am trying to write a command on just one line, i.e seperated by ';' and '|' etc, that finds the number of characters in the longest word of a file, preferably using the 'tr' and 'wc' commands. i no that wc shows the number of lines words and characters in a file but im not sure how to use it... (5 Replies)
Discussion started by: scotty85
5 Replies

7. Shell Programming and Scripting

Flat file-make field length equal to header length

Hello Everyone, I am stuck with one issue while working on abstract flat file which i have to use as input and load data to table. Input Data- ------ ------------------------ ---- ----------------- WFI001 Xxxxxx Control Work Item A Number of Records ------ ------------------------... (5 Replies)
Discussion started by: sonali.s.more
5 Replies

8. Shell Programming and Scripting

Finding the length of the longest column

Hi, I am trying to figure out how to get the length of the longest column in the entire file (because the length varies from one row to the other) I was doing this at first to check how many fields I have for the first row: awk '{print NF; exit}' file Now, I can do this: awk '{ if... (4 Replies)
Discussion started by: MIA651
4 Replies

9. Shell Programming and Scripting

wc -L giving incorrect length of longest line

Running below line gives 3957 as length of longest line in file 20121119_SRMNotes_init.dat awk ' { if ( length > 3950 ) { x = length } }END{ print x }' 20121119_SRMNotes_init.dat While wc -L 20121119_SRMNotes_init.dat gives output as 4329. Why is there a difference between these two commands.... (2 Replies)
Discussion started by: Satish Mantha
2 Replies

10. Shell Programming and Scripting

Filter all the lines with minimum specified length of words of a text file

Hi Can someone tell me which script will work best (in terms of speed and simplicity to write and run) for a large text file to filter all the lines with a minimum specified length of words ? A sample script with be definitely of great help !!! Thanks in advance. :) (4 Replies)
Discussion started by: my_Perl
4 Replies
SQL::ReservedWords::PostgreSQL(3pm)			User Contributed Perl Documentation		       SQL::ReservedWords::PostgreSQL(3pm)

NAME
SQL::ReservedWords::PostgreSQL - Reserved SQL words by PostgreSQL SYNOPSIS
if ( SQL::ReservedWords::PostgreSQL->is_reserved( $word ) ) { print "$word is a reserved PostgreSQL word!"; } DESCRIPTION
Determine if words are reserved by PostgreSQL. METHODS
is_reserved( $word ) Returns a boolean indicating if $word is reserved by either PostgreSQL 7.3, 7.4, 8.0 or 8.1. is_reserved_by_postgresql7( $word ) Returns a boolean indicating if $word is reserved by either PostgreSQL 7.3 or 7.4. is_reserved_by_postgresql8( $word ) Returns a boolean indicating if $word is reserved by either PostgreSQL 8.0 or 8.1. reserved_by( $word ) Returns a list with PostgreSQL versions that reserves $word. words Returns a list with all reserved words. EXPORTS
Nothing by default. Following subroutines can be exported: is_reserved is_reserved_by_postgresql7 is_reserved_by_postgresql8 reserved_by words SEE ALSO
SQL::ReservedWords <http://www.postgresql.org/docs/manuals/> AUTHOR
Christian Hansen "chansen@cpan.org" COPYRIGHT
This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.8.8 2008-03-28 SQL::ReservedWords::PostgreSQL(3pm)
All times are GMT -4. The time now is 10:01 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy