01-21-2017
Do you need the five intermediate files or is one awk script that reads file and just produces final sufficient?
When you say "My attemp(sic) is below as well though I am not very confident in it.", do you mean that you're getting syntax errors that you are unable to fix, or do you mean that you're getting output but you aren't confident that the results meet your specifications?
This User Gave Thanks to Don Cragun For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
i have a file in unix in which the records are like this
aaa 123 233
aaa 234 222
aaa 242 222
bbb 122 111
bbb 122 123
ccc 124 222
In the output i want only the below records
aaa
ccc
The validation logic is 1st column and 2nd column need to be considered
if both columns values are... (8 Replies)
Discussion started by: trichyselva
8 Replies
2. Shell Programming and Scripting
Hi
I am having files with date and time stamp as the folder names like 200906051400,200906051500,200906051600 .....hence everyday 24 files will be generated
i need to do certain things on this 24 files daily
file contains the data like
200906050016370 0 1244141195225298lessrv3 ... (13 Replies)
Discussion started by: aemunathan
13 Replies
3. Shell Programming and Scripting
1. if the 1st row IDs of input1 (ID1/ID2.....) is equal to any IDNames of input2
print all relevant values together as defined in the output.
2. A bit tricky part is IDno in the output. All we need to do is numbering same kind of
letters as 1 (aa of ID1) and different letters as 2 (ab... (4 Replies)
Discussion started by: ruby_sgp
4 Replies
4. Shell Programming and Scripting
I need to split the file
Conditions:
Ignore any record that either starts with 1 or 9
Split the file at position 404 , if position 404 is abc or def then write all the records in a file > File 1 , the remaining records should go in to a file > File 2
Further I want to split the... (7 Replies)
Discussion started by: protech
7 Replies
5. Shell Programming and Scripting
If $1 in file1 matches $2 in file2. Then the value in $2 of file2 is updated to $1"."$2 of file2. The awk seems to only match the two files but not update. Thank you :).
awk
awk 'NR==FNR{A ; next} $1 in A { $2 = a }1' file1 file2
file1
name version
NM_000593 5
NM_001257406... (3 Replies)
Discussion started by: cmccabe
3 Replies
6. Shell Programming and Scripting
I am trying to use awk to match two files that are tab-delimited. When a match is found between file1 $1 and file2 $4, $4 in file2 is updated using the $2 value in file1. If no match is found then the next line is processed. Thank you :).
file1
uc001bwr.3 ADC
uc001bws.3 ADC... (4 Replies)
Discussion started by: cmccabe
4 Replies
7. Shell Programming and Scripting
The below awk will filter a list of 30,000 lines in the tab-delimited file. What I am having trouble with is adding a condition to SVTYPE=CNV
that will only print that line if CI= must be >.05 .
The other condition to add is if SVTYPE=Fusion, then in order to print that line
READ_COUNT must... (3 Replies)
Discussion started by: cmccabe
3 Replies
8. Shell Programming and Scripting
In the awk, thanks you @RavinderSingh13, for the help in below, hopefully it is close as I am trying to update the value in $12 of the tab-delimeted file2 with the matching value in $1 of the space delimeted file1. I have added comments for each line as well. Thank you :).
awk
awk '$12 ==... (10 Replies)
Discussion started by: cmccabe
10 Replies
9. Shell Programming and Scripting
I have been reading old posts and trying to come up with a solution for the below: Use a tab-delimited input file to assign
point to variables that are used to update a specific field, Rank. I really couldn't find too much in the way of assigning points
to variable, but made an attempt at an awk... (4 Replies)
Discussion started by: cmccabe
4 Replies
10. Shell Programming and Scripting
Trying to use awk to store the value of $5 in file1 in array x. That array x is then used to search $4 of file1 to find aa match (I use x to skip the header in file1). Since $4 can have multiple strings in it seperated by a , (comma), I split them and iterate througn each split looking for a match.... (2 Replies)
Discussion started by: cmccabe
2 Replies
LEARN ABOUT MOJAVE
tap::parser::iteratorfactory5.18
TAP::Parser::IteratorFactory(3pm) Perl Programmers Reference Guide TAP::Parser::IteratorFactory(3pm)
NAME
TAP::Parser::IteratorFactory - Figures out which SourceHandler objects to use for a given Source
VERSION
Version 3.26
SYNOPSIS
use TAP::Parser::IteratorFactory;
my $factory = TAP::Parser::IteratorFactory->new({ %config });
my $iterator = $factory->make_iterator( $filename );
DESCRIPTION
This is a factory class that takes a TAP::Parser::Source and runs it through all the registered TAP::Parser::SourceHandlers to see which
one should handle the source.
If you're a plugin author, you'll be interested in how to "register_handler"s, how "detect_source" works.
METHODS
Class Methods
"new"
Creates a new factory class:
my $sf = TAP::Parser::IteratorFactory->new( $config );
$config is optional. If given, sets "config" and calls "load_handlers".
"register_handler"
Registers a new TAP::Parser::SourceHandler with this factory.
__PACKAGE__->register_handler( $handler_class );
"handlers"
List of handlers that have been registered.
Instance Methods
"config"
my $cfg = $sf->config;
$sf->config({ Perl => { %config } });
Chaining getter/setter for the configuration of the available source handlers. This is a hashref keyed on handler class whose values
contain config to be passed onto the handlers during detection & creation. Class names may be fully qualified or abbreviated, eg:
# these are equivalent
$sf->config({ 'TAP::Parser::SourceHandler::Perl' => { %config } });
$sf->config({ 'Perl' => { %config } });
"load_handlers"
$sf->load_handlers;
Loads the handler classes defined in "config". For example, given a config:
$sf->config({
MySourceHandler => { some => 'config' },
});
"load_handlers" will attempt to load the "MySourceHandler" class by looking in @INC for it in this order:
TAP::Parser::SourceHandler::MySourceHandler
MySourceHandler
"croak"s on error.
"make_iterator"
my $iterator = $src_factory->make_iterator( $source );
Given a TAP::Parser::Source, finds the most suitable TAP::Parser::SourceHandler to use to create a TAP::Parser::Iterator (see
"detect_source"). Dies on error.
"detect_source"
Given a TAP::Parser::Source, detects what kind of source it is and returns one TAP::Parser::SourceHandler (the most confident one). Dies
on error.
The detection algorithm works something like this:
for (@registered_handlers) {
# ask them how confident they are about handling this source
$confidence{$handler} = $handler->can_handle( $source )
}
# choose the most confident handler
Ties are handled by choosing the first handler.
SUBCLASSING
Please see "SUBCLASSING" in TAP::Parser for a subclassing overview.
Example
If we've done things right, you'll probably want to write a new source, rather than sub-classing this (see TAP::Parser::SourceHandler for
that).
But in case you find the need to...
package MyIteratorFactory;
use strict;
use vars '@ISA';
use TAP::Parser::IteratorFactory;
@ISA = qw( TAP::Parser::IteratorFactory );
# override source detection algorithm
sub detect_source {
my ($self, $raw_source_ref, $meta) = @_;
# do detective work, using $meta and whatever else...
}
1;
AUTHORS
Steve Purkis
ATTRIBUTION
Originally ripped off from Test::Harness.
Moved out of TAP::Parser & converted to a factory class to support extensible TAP source detective work by Steve Purkis.
SEE ALSO
TAP::Object, TAP::Parser, TAP::Parser::SourceHandler, TAP::Parser::SourceHandler::File, TAP::Parser::SourceHandler::Perl,
TAP::Parser::SourceHandler::RawTAP, TAP::Parser::SourceHandler::Handle, TAP::Parser::SourceHandler::Executable
perl v5.18.2 2014-01-06 TAP::Parser::IteratorFactory(3pm)