App-combinesheets
view release on metacpan or search on metacpan
Each "-inputs" can have one or more file names, and there can be one
or more "-inputs" arguments. It defines what are the input
spreadsheets and how they are identified in the configuration file
(see the "-config" argument). For example, the inputs for our
example above can be specified in any of these ways:
-inputs PERSON=persons.tsv -inputs CAR=cars.tsv
-inputs PERSON=persons.tsv CAR=cars.tsv
-inputs PERSON=persons.tsv,CAR=cars.tsv
The first file name is considered to be the "primary" input (see the
description above): the resulting spreadsheet will have the same
number of lines as the primary input.
The file names ending with the ".csv" are considered to be in the
COMMA-separated formats, all others are considered to be
TAB-separated.
This is a mandatory parameter.
-outfile <output-file>
An optional parameter specifying a filename of the combined result.
By default, it is created on STDOUT. It is always in the
TAB-separated format.
-check
This option causes that the configuration file and the input files
(only their header lines will be read) will be checked for errors
but no resulting spreadsheet will be created.
-ignorecases
Not yet implemented.
General options
-h Print a brief usage message and exits.
-help Print a brief usage message with options and exit.
-man Print a full usage message and exit.
-version
Print the version and exit.
ENVIRONMENT VARIABLES
COMBINE_SHEETS_EXT_PATH
It contains a path that is used when looking for external programs (when
the reserved words PROG or PROGS are used). For example, the "examples"
directory in the source distribution of this package has an external
program "age.sh". The full invocation can be done by:
COMBINE_SHEETS_EXT_PATH=examples bin/combinesheets -cfg examples/cars.cfg --inputs CAR=examples/cars.csv
DEPENDENCIES
In order to run this tool you need Perl and the following Perl modules
to be installed:
App::Cmd::Simple
Text::CSV::Simple
Text::CSV_XS
File::BOM
Getopt::Long::Descriptive
Pod::Usage
Algorithm::Loops
Optionally (if your configuration file uses the reserved word PROG or
PROGS for calculated columns):
IO::CaptureOutput
KNOWN BUGS, MISSING FEATURES
* Columns are identified by their header names. There is no way to
identify them simply by their order (column number).
* The input spreadsheet are read first into memory. Which may be a
problem with really huge spreadsheets.
* The inputs can be COMMA-separated or TAB-separated. It would be
perhaps nice to allow also the Excel spreadsheets.
* Comparing header names and rows is case-sensitive only. There is a
plan to implement the option "-ignorecases",
Some of these missing features may be implemented later.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc App::combinesheets
You can also look for information at:
* RT: CPAN's request tracker
<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-combinesheets>
* AnnoCPAN: Annotated CPAN documentation
<http://annocpan.org/dist/App-combinesheets>
* CPAN Ratings
<http://cpanratings.perl.org/d/App-combinesheets>
* Search CPAN
<http://search.cpan.org/dist/App-combinesheets/>
AUTHOR
Martin Senger <martin.senger@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Martin Senger, CBRC - KAUST
(Computational Biology Research Center - King Abdullah University of
Science and Technology) All Rights Reserved..
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
( run in 1.133 second using v1.01-cache-2.11-cpan-98e64b0badf )