Sponsored Content
Full Discussion: String condensation
Top Forums UNIX for Dummies Questions & Answers String condensation Post 302643843 by agama on Sunday 20th of May 2012 08:58:55 PM
Old 05-20-2012
I've broken the first awk posted into individual statements with comments; hope it helps explain things.

Code:
# create two hashes (min and max) based on the contents of the nineth field ($9)
awk '
    {       # this block of code executed for each input record
        min[$9] = min[$9] ? min[$9] : $4;       # capture field 4 as initial default if min is not set
                                                # this assumes that values in field 4 will always be non-zero

        # max does not need to be initialised as it defaults to zero.  (provided field 5 values are always >= 0)

        min[$9] = $4 < min[$9] ? $4 : min[$9];  # capture current field 4 if it is smaller than minimum
        max[$9] = $5 > max[$9] ? $5 : max[$9]   # capture field 5 if larger than maximum
    }

    # this code block executed after last input record  has been read and processed above
    # the assumpion that the last input record is still in the buffer (might not be true for old awk versions, 
    # but this is not likely to be an issue.  The programme also assumes that the only changing fields
    # in the input data are fields 4, 5, and 9.
    END {
        for (i in max)  # for each value of field 9 that was observed
        {
            $4=min[i];      # substitute the min and max values and field 9 into the current record.
            $5=max[i];
            $9=i;
            print           # print the record with the substituted values.
        }
    }'

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Search, replace string in file1 with string from (lookup table) file2?

Hello: I have another question. Please consider the following two sample, tab-delimited files: File_1: Abf1 YKL112w Abf1 YAL054c Abf1 YGL234w Ace2 YKL150w Ace2 YNL328c Cup9 YDR441c Cup9 YDR442w Cup9 YEL040w ... File 2: ... ABF1 YKL112W ACE2 YLR131C (9 Replies)
Discussion started by: gstuart
9 Replies

2. Shell Programming and Scripting

search string in a file and retrieve 10 lines including string line

Hi Guys, I am trying to write a perl script to search a string "Name" in the file "FILE" and also want to create a new file and push the searched string Name line along with 10 lines following the same. can anyone of you please let me know how to go about it ? (8 Replies)
Discussion started by: sukrish
8 Replies

3. Shell Programming and Scripting

replace (sed?) a string in file with multiple lines (string) from variable

Can someone tell me how I can do this? e.g: a=$(echo -e wert trewt ertert ertert ertert erttert erterte rterter tertertert ert) How do i replace the STRING with $a? I try this: sed -i 's/STRING/'"$a"'/g' filename.ext but this don' t work (2 Replies)
Discussion started by: jforce
2 Replies

4. Shell Programming and Scripting

to extract string from main string and string comparison

continuing from my previous post, whose link is given below as a reference https://www.unix.com/shell-programming-scripting/171076-shell-scripting.html#post302573569 consider there is create table commands in a file for eg: CREATE TABLE `Blahblahblah` ( `id` int(11) NOT NULL... (2 Replies)
Discussion started by: vivek d r
2 Replies

5. UNIX for Dummies Questions & Answers

Comparing a String variable with a string literal in a Debian shell script

Hi All, I am trying to to compare a string variable with a string literal inside a loop but keep getting the ./testifstructure.sh: line 6: #!/bin/sh BOOK_LIST="BOOK1 BOOK2" for BOOK in ${BOOK_LIST} do if then echo '1' else echo '2' fi done Please use next... (1 Reply)
Discussion started by: daveu7
1 Replies

6. Shell Programming and Scripting

sed or awk command to replace a string pattern with another string based on position of this string

here is what i want to achieve... consider a file contains below contents. the file size is large about 60mb cat dump.sql INSERT INTO `table1` (`id`, `action`, `date`, `descrip`, `lastModified`) VALUES (1,'Change','2011-05-05 00:00:00','Account Updated','2012-02-10... (10 Replies)
Discussion started by: vivek d r
10 Replies

7. Shell Programming and Scripting

grep exact string from files and write to filename when string present in file

I am attempting to grep an exact string from a series of files within a directory and append that output to the filename when it is present in the file. I've been after this all day with no luck. Thanks for your help in advance :wall:. (4 Replies)
Discussion started by: JC_1
4 Replies

8. Shell Programming and Scripting

Remove lines between the start string and end string including start and end string Python

Hi, I am trying to remove lines once a string is found till another string is found including the start string and end string. I want to basically grab all the lines starting with color (closing bracket). PS: The line after the closing bracket for color could be anything (currently 'more').... (1 Reply)
Discussion started by: Dabheeruz
1 Replies

9. Shell Programming and Scripting

awk string comparison unterminated quoted string andrule of thumb

I have the logic below to look up for matches within the columns between the two files with awk. In the if statement is where the string comparison is attempted with == The issue seems to be with the operands, as 1. when " '${SECTOR}' " -- double quote followed by single quote -- awk matches... (1 Reply)
Discussion started by: deadyetagain
1 Replies

10. UNIX for Beginners Questions & Answers

Search a string and display its location on the entire string and make a text file

I want to search a small string in a large string and find the locations of the string. For this I used grep "string" -ob <file name where the large string is stored>. Now this gives me the locations of that string. Now how do I store these locations in a text file. Please use CODE tags as... (7 Replies)
Discussion started by: ANKIT ROY
7 Replies
WWW::Mechanize::FormFiller::Value::Random::Date(3pm)	User Contributed Perl Documentation   WWW::Mechanize::FormFiller::Value::Random::Date(3pm)

NAME
WWW::Mechanize::FormFiller::Value::Random::Date - Fill a timestamp into an HTML form field SYNOPSIS
use WWW::Mechanize::FormFiller; use WWW::Mechanize::FormFiller::Value::Random::Date; my $f = WWW::Mechanize::FormFiller->new(); # Create a random value for the HTML field "born" my $born = WWW::Mechanize::FormFiller::Value::Random::Date->new( born => string => '%Y%m%d', min => '20000101', max => '20373112' ); $f->add_value( born => $born ); # Alternatively take the following shorthand, which adds the # field to the list as well : # If there is no password, put a random one out of the list there my $last_here = $f->add_filler( last_here => Random::Date => string => '%H%M%S', min => '000000', max => 'now'); DESCRIPTION
This class provides a way to write a randomly chosen value into a HTML field. new NAME, %ARGS Creates a new value which will correspond to the HTML field "NAME". The allowed %ARGS are string => POSIX strftime string min => minimum time stamp (inclusive) max => maximum time stamp (exclusive) The "min" and "max" time stamps must be in the same format as the "string" supplies. WARNING The algorithm to implement "min" and "max" barriers is very simplicistic - it tries as many random values as necessary to meet the two criteria. This means that your script may enter an infinite loop if the criteria can never be attained or are too little apart. name [NEWNAME] Gets and sets the name of the HTML field this value corresponds to. value FIELD Returns the value to put into the HTML field. EXPORT None by default. COPYRIGHT AND LICENSE This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Copyright (C) 2002,2003 Max Maischein AUTHOR
Max Maischein, <corion@cpan.org> Please contact me if you find bugs or otherwise improve the module. More tests are also very welcome ! SEE ALSO
Data::Random, WWW::Mechanize, WWW::Mechanize::Shell, WWW::Mechanize::FormFiller, WWW::Mechanize::FormFiller::Value::Value, WWW::Mechanize::FormFiller::Value::Default, WWW::Mechanize::FormFiller::Value::Fixed, WWW::Mechanize::FormFiller::Value::Interactive perl v5.10.1 2009-04-24 WWW::Mechanize::FormFiller::Value::Random::Date(3pm)
All times are GMT -4. The time now is 03:09 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy