NAME
txdfilter - filter textual data files
DESCRIPTION
This program filters/transforms textual data files (pipe operation) concering the syntax and header stuff. The data itself is preserved. Any Parameters after options are file title and data column titles (overriding the named parameters).
PARAMETERS
These are the general rules for specifying parameters to this program:
txdfilter -s -xyz -s=value --long --long=value [--] [files/stuff]
You mention the parameters/switches you want to change in any order or even multiple times (they are processed in the oder given, later operations overriding/extending earlier settings. An only mentioned short/long name (no "=value") means setting to 1, which is true in the logical sense. Also, prepending + instead of the usual - negates this, setting the value to 0 (false). Specifying "-s" and "--long" is the same as "-s=1" and "--long=1", while "+s" and "++long" is the sames as "-s=0" and "--long=0".
There are also different operators than just "=" available, notably ".=", "+=", "-=", "*=" and "/=" for concatenation / appending array/hash elements and scalar arithmetic operations on the value. Arrays are appended to via "array.=element", hash elements are set via "hash.=name=value". You can also set more array/hash elements by specifying a separator after the long parameter line like this for comma separation: --array/,/=1,2,3 --hash/,/=name=val,name2=val2
The available parameters are these, default values (in Perl-compatible syntax) at the time of generating this document following the long/short names:
- black (scalar)
-
0
ignore whitespace at beginning and end of line (disables strict mode) (from Text::NumericData)
- coltitles, i (array)
-
[]
new column titles (as in "title1","title2","title3")
- comchar (scalar)
-
undef
comment character (if not set, deduce from data or use #) (from Text::NumericData)
- comment, C (array)
-
[]
comment to include between file title and column titles, lines in array
- comregex (scalar)
-
'[#%]*[^\\S\\015\\012]*'
regex for matching comments (from Text::NumericData)
- config, I (array)
-
[]
Which configfile(s) to use (overriding automatic search in likely paths); special: just -I or --config causes printing a current config file to STDOUT
- data (scalar)
-
1
include the data in printout
- delaftercom, D (scalar)
-
0
delete any comment lines after data
- empty (scalar)
-
0
treat empty lines as empty data sets, preserving them in output (from Text::NumericData)
- fdex, F (scalar)
-
''
regex for first data line (alterative to lhex)
- fill (scalar)
-
undef
fill value for undefined data (from Text::NumericData)
- head (scalar)
-
1
include the header in printout
- headlines, H (scalar)
-
undef
use this fixed number of lines as header
- help, h (scalar)
-
0
show the help message; 1: normal help, >1: more help; "par": help for paramter "par" only
Additional fun with negative values, optionally followed by comma-separated list of parameter names: -1: list par names, -2: list one line per name, -3: -2 without builtins, -10: dump values (Perl style), -11: dump values (lines), -100: print POD.
- history (scalar)
-
0
keep old title(s) lines as historic comments (writing new overall title before, new column titles below), otherwise replace them
- lhex, L (scalar)
-
''
regex for last header line (alternative to fdex)
- lineend (scalar)
-
undef
line ending to use: (DOS, MAC, UNIX or be explicit if you can, taken from data if undefined, finally resorting to UNIX) (from Text::NumericData)
- modtitles, m (hash)
-
{}
modify existing titles... hash with column indices as key, in Perl: (1=>"NeSpalte",4=>"AndereSpalte")
- newhead, n (scalar)
-
0
make completely new header
- numformat, N (array)
-
[]
printf formats to use (if there is no "%" present at all, one will be prepended) (from Text::NumericData)
- numregex (scalar)
-
'[\\+\\-]?\\d*\\.?\\d*[eE]?\\+?\\-?\\d*'
regex for matching numbers (from Text::NumericData)
- origin, o (scalar)
-
0
create Origin-friendly format with tab separation and coltitles as only header line and NO comment character, triggers also quote=0 and delaftercom=1
- outsep (scalar)
-
undef
use this separator for output (leave undefined to use input separator, fallback to TAB) (from Text::NumericData)
- quote (scalar)
-
undef
quote titles (from Text::NumericData)
- quotechar (scalar)
-
undef
quote character to use (derived from input or ") (from Text::NumericData)
- separator (scalar)
-
undef
use this separator for input (otherwise deduce from data; TAB is another way to say "tabulator", fallback is ) (from Text::NumericData)
- strict, S (scalar)
-
0
strictly split data lines at configured separator (otherwise more fuzzy logic is involved) (from Text::NumericData)
- text, T (scalar)
-
1
allow text as data (not first column) (from Text::NumericData)
- title, t (scalar)
-
undef
new title
- touchdata (scalar)
-
1
touch the data lines (otherwise just copy them)
- touchhead (scalar)
-
1
touch the header (otherwise just copy)
- version (scalar)
-
0
print out the program version
AUTHOR
Thomas Orgis <thomas@orgis.org>
LICENSE AND COPYRIGHT
Copyright (c) 2005-2016 Thomas Orgis, Free Software licensed under the same terms as Perl 5.10