This looks like a continuation of your earlier thread in September (rather than homework/coursework).
Here is an awk script that does a merge like you want:
Code:
#!/bin/sh
awk '
$1=="}" { bl-- }
bl>0 {
# we are within a { } frame
if ($1=="EqName") {
eqname=$0
} else if ($1=="Id") {
id=$0
} else {
# ORS is a newline
key=(eqname ORS id)
if (key in store) {
# append string
store[key]=(store[key] ORS $0)
} else {
# new string
store[key]=$0
# enforce the original order with a number-indexed array
ind[++cnt]=key
}
}
}
$1=="{" { bl++ }
END {
# walk through the number-indexed array
# "for (key in store)" would be a random order
for (c=1; c<=cnt; c++) {
key=ind[c]
print "POLY_STATS"
print "{"
print key
print store[key]
print "}"
}
}
' file
The { } frame and the text outside are hard-coded in print statements.
This User Gave Thanks to MadeInGermany For This Post:
Can anybody help me out with this problem
" a shell program that takes one or any number of file names as input; sorts the lines of each file in ascending order and displays the non blank lines of each sorted file and merge them as one combined sorted file. The program generates an error... (1 Reply)
Hi All,
I have a file with 3 columns (Bank Name, Account Number and Amount). My requirement, I need to delete lines using Unix Shell script:
1. Which are having Alphanumeric characters in Account Number (eg. Line3).
2. Which are having 0.00 in amount. (eg. Line4)
3. And also I need to... (4 Replies)
Hi,
I'm not a expert in shell programming, so i've come here to take help from u gurus.
I'm trying to tailor a csv file that i got to make it work for the LOAD FROM command.
I've a datatable csv of the below format -
--in file format
xx,xx,xx ,xx , , , , ,,xx,
xxxx,, ,, xxx,... (11 Replies)
I need to delete half(approx) the file or select half the file by existence of some character
My file looks like
1
2
3
4
.
.
.
50
.
.
100I need to select only 50 to rest of the file or needs to delete the file upto 50.
Please help me out.. (6 Replies)
Hi,
I have written a script that returns the line number of the pattern i want and i stored the line number in a variable(getlinenumber).Now i want to delete all the lines in a file above this line number which is stored in a variable.
i am using sed '1,$getlinenumberd' > file1.txt which is... (2 Replies)
Hi I have two scripts one is Expect and other is shell.
I want to merge Expect code in to Shell script so that i can run it using only one script. Can somebody help me out ?
Order to execute: Run Expect_install.sh first and then when installation completes run runTests.sh shell script.
... (1 Reply)
Hello,
I've been working on a bash script to parse through firewall logs (cisco). I'm nearing the end and have a dilemma.
My data looks as such (actual data is several gigs worth of logs - without the headers):
sourceIP destinationIP destinationProtocol destinationPort
1.1.1.1 2.2.2.2 ... (2 Replies)
Hi
I have a text file like below. THe content of the text will vary.
Entire text file have four consecutive lines followed with blank line.
I want to delete the occurrence of the two consicutive lines in the text file. I don't have pattern to match and delete. Just i need to delete all... (5 Replies)
Hi,
Can anyone help me for merge the following multi-line log which beginning with a " and line ending with ": into one line.
*****Original Log*****
087;2008-12-06;084403;"mc;;SYHLR6AP1D\LNZW;AD-703;1;12475;SYHLR6AP1B;1.1.1.1;0000000062;HGPDI:MSISDN=12345678,APNID=1,EQOSID=365;... (3 Replies)
Perl::Critic::Policy::ControlStructures::ProhibitUnreachUserCContributed Perl DPerl::Critic::Policy::ControlStructures::ProhibitUnreachableCode(3)NAME
Perl::Critic::Policy::ControlStructures::ProhibitUnreachableCode - Don't write code after an unconditional "die, exit, or next".
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
This policy prohibits code following a statement which unconditionally alters the program flow. This includes calls to "exit", "die",
"return", "next", "last" and "goto". Due to common usage, "croak" and "confess" from Carp are also included.
Code is reachable if any of the following conditions are true:
o Flow-altering statement has a conditional attached to it
o Statement is on the right side of an operator "&&", "||", "//", "and", "or", or "err".
o Code is prefixed with a label (can potentially be reached via "goto")
o Code is a subroutine
EXAMPLES
# not ok
exit;
print "123
";
# ok
exit if !$xyz;
print "123
";
# not ok
for ( 1 .. 10 ) {
next;
print 1;
}
# ok
for ( 1 .. 10 ) {
next if $_ == 5;
print 1;
}
# not ok
sub foo {
my $bar = shift;
return;
print 1;
}
# ok
sub foo {
my $bar = shift;
return if $bar->baz();
print 1;
}
# not ok
die;
print "123
";
# ok
die;
LABEL: print "123
";
# not ok
croak;
do_something();
# ok
croak;
sub do_something {}
CONFIGURATION
This Policy is not configurable except for the standard options.
SEE ALSO
Perl::Critic::Policy::ControlStructures::ProhibitPostfixControls
AUTHOR
Peter Guzis <pguzis@cpan.org>
COPYRIGHT
Copyright (c) 2006-2011 Peter Guzis. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license
can be found in the LICENSE file included with this module.
perl v5.16.3 2014-06-09 Perl::Critic::Policy::ControlStructures::ProhibitUnreachableCode(3)