Sponsored Content
Full Discussion: Control-break"ish" in awk
Top Forums UNIX for Dummies Questions & Answers Control-break"ish" in awk Post 302932078 by beca123456 on Monday 19th of January 2015 03:14:34 AM
Old 01-19-2015
Still not working !!!

Using your code:
input:
Code:
1|Bob
3|Bob
Ref|Bob
5|Rick
1|Rick
Ref|Rick

output:
Code:
1|Bob
3|Bob
Ref|Bob|*
5|Rick
1|Rick
Ref|Rick|*

I should get:
Code:
1|Bob
3|Bob
Ref|Bob|*
5|Rick
1|Rick
Ref|Rick

Let's me explain again with another example:
Code:
1|Bob
3|Bob
Ref|Bob
2|Rick
5|Rick
1|Rick
Ref|Rick
7|Paul
Ref|Paul

Here we have 3 groups "Bob", "Rick" and "Paul'.
* 1st group:
1st record, value of $1 is 1 (i.e. <4)
2nd record, value of $1 is 3 (i.e. <4)
=> as all $1 are <4, we can add "*" at the last record of the group (the one starting with Ref)

* 2nd group:
1st record of this group, value of $1 is 2 (i.e. <4)
2nd record of this group, value of $1 is 5 (i.e >4)
=> at least one value of the group is >4, the last record of the group (the one starting with Ref), must remain unchanged (no matter the value of $1 in the 3rd record of the group)

* 3rd group:
1st record of this group, value of $1 is 7 (i.e. >4)
=> the last record of the group (the one starting with Ref), must remain unchanged.

We should then obtain:
Code:
1|Bob
3|Bob
Ref|Bob|*
2|Rick
5|Rick
1|Rick
Ref|Rick
7|Paul
Ref|Paul

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Explain the line "mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`"

Hi Friends, Can any of you explain me about the below line of code? mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'` Im not able to understand, what exactly it is doing :confused: Any help would be useful for me. Lokesha (4 Replies)
Discussion started by: Lokesha
4 Replies

2. Shell Programming and Scripting

help for saving vertical datas to horizontal with "awk" or "cut"

hi, i have a file having datas like that ./a.txt 12344 12345 12346 12347 ..... ..... ... i want to save this datas to another file like that ./b.txt 12344 12345 12346 12347 ... ... ... i think awk can make this but how? :) waiting for ur help. (3 Replies)
Discussion started by: mercury
3 Replies

3. Shell Programming and Scripting

cat $como_file | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g'

hi All, cat file_name | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g' Can this be done by using sed or awk alone (4 Replies)
Discussion started by: harshakusam
4 Replies

4. Shell Programming and Scripting

"last" in perl vs "break" elsewhere

Is there a functional difference between the two statements? (4 Replies)
Discussion started by: thmnetwork
4 Replies

5. Shell Programming and Scripting

Simplify Bash Script Using "sed" Or "awk"

Input file: 2 aux003.net3.com error12 6 awn0117.net1.com error13 84 aux008 error14 29 aux001.ha.ux.isd.com error12 209 aux002.vm.ux.isd.com error34 21 alx0027.vm.net2.com error12 227 dux001.net5.com error123 22 us008.dot.net2.com error121 13 us009.net2.com error129Expected Output: 2... (4 Replies)
Discussion started by: sQew
4 Replies

6. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

7. Shell Programming and Scripting

how to use "cut" or "awk" or "sed" to remove a string

logs: "/home/abc/public_html/index.php" "/home/abc/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" how to use "cut" or "awk" or "sed" to get the following result: abc abc xyz xyz xyz (8 Replies)
Discussion started by: timmywong
8 Replies

8. Tips and Tutorials

How to do a "Control Break" (Algorithm)

A vast amount of problems asked in "Shell Programming an Scripting" can be traced back to be an application of a basic algorithm called a Control Break. Every programmer - and script writers are programmers nonetheless - should immediately recognize problems of this sort and know how to deal with... (1 Reply)
Discussion started by: bakunin
1 Replies

9. UNIX for Dummies Questions & Answers

Find a string across line break (because of "segmentation fault core dumped")

Hi, thanks to a precedent post, and thanks to the reply of derekludwig of the forum, I have convert my first awk command as : test.txt is : AAAAAGHIJKLAjKMEFJKLjklABCDJkLEFGHIJKL awk -f findstring.awk test.txt > textreturn.txtfindstring.awk is : BEGIN{ SLENGTH = 3 } { ... (3 Replies)
Discussion started by: thewizarde6
3 Replies

10. Shell Programming and Scripting

Bash script - Print an ascii file using specific font "Latin Modern Mono 12" "regular" "9"

Hello. System : opensuse leap 42.3 I have a bash script that build a text file. I would like the last command doing : print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt where : print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies
Cache::Ref::CLOCK(3pm)					User Contributed Perl Documentation				    Cache::Ref::CLOCK(3pm)

NAME
Cache::Ref::CLOCK - CLOCK cache replacement algorithm SYNOPSIS
my $c = Cache::Ref::CLOCK->new( size => $n, k => $k, ); DESCRIPTION
This algorithm is provides a second chance FIFO cache expiry policy using a circular buffer. It is a very well accepted page replacement algorithm, but largely for reasons which are irrelevant in this context (cache hits don't need to be serialized in a multiprocessing context as they only require an idempotent operation (setting a bit to 1)). ATTRIBUTES
size The size of the live entries. k This is the initial value given to all hit entries. As the hand moves through the circular buffer it decrements the counters. The default is 1, providing semantics similar to a second chance FIFO cache. Larger values of "k" model LRU more accurately. This is pretty silly though, as Cache::Ref::LRU is probably way more efficient for any "k" bigger than 1. AUTHOR
Yuval Kogman COPYRIGHT AND LICENSE
This software is copyright (c) 2010 by Yuval Kogman. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. perl v5.12.4 2010-09-23 Cache::Ref::CLOCK(3pm)
All times are GMT -4. The time now is 08:08 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy