uncia(1)

NAME
uncia - a big cat

SYNOPSIS
uncia [ option ... ][ input-spec ... ][ -Output output-spec ]

uncia -version

DESCRIPTION
If you thought cat -n was considered harmful, you haven't met my uncia. Uncia is the genus of Snow Leopards in the family Felidae (cats).

The uncia command may be used to catenate (join) files head-to-tail. It can also optionally perform pre-processing in its inputs, and post-processing on its outputs.

OPTIONS
The uncia command understands the following options:

-VERSion
    This option may be used to print the version of the uncia command.

-Output output-spec
    This option may be used to specify the destination to write the output to. This must appear after all of the input-spec on the command line.

@filename
    This option is replaced by the contents of the file, as if they were given as arguments on the command line. Comments (typical Unix # style) are discarded. White space, including newlines, separate the arguments in the file. There is no quoting. There is no file name globbing.

All options may be abbreviated; the abbreviation is documented as the upper case letters, all lower case letters and underscores (_) are optional. You must use consecutive sequences of optional letters.

All options are case insensitive, you may type them in upper case or lower case or a combination of both, case is not important.

For example: the arguments "-help", "-HEL" and "-h" are all interpreted to mean the -Help option. The argument "-hlp" will not be understood, because consecutive optional characters were not supplied.

The GNU long option names are understood. Since all option names for uncia are long, this means ignoring the extra leading '-'. The "--option=value" convention is also understood.

  input-spec
The inputs (the data to be catenated (joined) head-to-tail) may be simple or complex. You may specify as many inputs as you like. If no input-spec is given, the standard input is used.

-   This means the standard input is to be used. You may only specify this input once.

filename
    The named file is used for input.

URI Uniform Resource Identifier (URI) is a compact string of characters used to identify or name a resource on the Internet.

-echo string
    The given string (with a newline appended) will be used as input. If you want more than one word, you must use quotes, so that uncia sees only a single string constant. If you want binary data, team this up with a -quoted-printable filter.

-PAste input-spec input-spec
    This input filter may be used to read two files, and glue them together side-by-side, with the corresponding lines of each file separated by a TAB character. If you want more than two columns, chain -paste filters togther on the right.

-PAste_Delimited string input-spec input-spec
    This input filter may be used to read two files, and glue them together side-by-side, with the corresponding lines of each file separated by the given I[delimiter string. If you want more than two columns, chain -paste-delim filters togther on the right.

input-spec -Base64
    This input filter decodes the MIME base 64 encoding. See RFC 4648 for more information.

input-spec -CRLF

input-spec -COLumn_ReMove start [ stop ]
    This input filter removes the specified range of columns. The columns are numbred from 1, for compatibility with the colrm(1) command. No stop column means infinitely wide.

input-spec -Down_Case
    This input filter maps upper case ASCII characters to lower case.

input-spec -Escape_NewLine
    This input filter removes backslash-newline sequences.

input-spec -EXpand [ tab-width ]
    This input filter replaces tab characters with the appropriate number of spaces. The tab-width defaults to 8 characters if not set.

input-spec -Gnu_UnZip
    This input filter decompresses data compressed by gzip(1).

input-spec -Hash_Comments
    This input filter may be used to remove comments. The comments start with a hash character (#) and extend to the end of the line.

input-spec -HEad [ number ]
    This input filter limits the content to the first number lines, or the first 10 if no number is given.

input-spec -number_nonBlank
    This input filter numbers the non-blank lines of the preceding input source.

input-spec -Number
    This input filter numbers the lines of the preceding input source.

input-spec -Quoted_Printable
    This input filter decodes the MIME Quoted Printable encoding. See RFC 1521 for more information.

input-spec -Remove_Prefix text
    This input filter removes a constant string from the start of the input lines. Lines which don't match are passed through unchanged.

input-spec -REVerse
    This input filter reverses the order of the characters on each line.

input-spec -REVerse_Lines
    This input filter reverses the order of the lines in the input.

input-spec -Rotate13
    This input filter is a simple Caesar-cipher encryption that replaces each English letter with the one 13 places forward or back along the alphabet. It is its own inverse.

input-spec -Rotate47
    ROT47 is a derivative of ROT13 which, in addition to scrambling the basic letters, also treats numbers and common symbols. Instead of using the sequence A–Z as the alphabet, ROT47 uses a larger set of characters from the common character encoding known as ASCII. It is its own inverse.

input-spec -SOrt
    This input filter sorts its input lines (using strcmp, or equaivalent).

input-spec -TAil [ number ]
    This input filter limits the content to the last number lines, or the last 10 if no number is given.

input-spec -UNique
    This input filter suppresses duplicate lines. This filter does not detect repeated lines unless they are adjacent; you may want to sort the input first.

input-spec -Upper_Case
    This input filter maps lower case ASCII characters to upper case.

input-spec -UUDecode
    This input filter decodes the Unix-to-Unix encoding.

Filters may be chained together, and will be applied in the order given.

  output-spec
The outputs may be simple or complex. If no output-spec is given, the standard output is used.

-   This means the standard output is to be used. You may only specify this output once.

filename
    The named file will be written to.

-Base64 output-spec
    This output filter encodes the data using the MIME base 64 encoding. See RFC 4648 for more information.

-CRLF output-spec
    This output filter maps newlines into CR LF sequences.

-Double_Space output-spec
    This output filter double spaces the output, doubling each newline.

-Down_Case output-spec
    This output filter maps ASCII upper case characters to lower case.

-FOld [ line-width [ tab-width ]] output-spec
    The output filter folds long lines; it even copes with overwriting using carriage returns and/or back space to overwrite character positions. The line-width defaults to 75. The tab-width defaults to 8.

-Fold_Spaces [ line-width [ tab-width ]] output-spec
    As above, but it tries to break lines at spaces rather than in the middle of words.

-Gnu_Zip output-spec
    This output filter compresses its output using the gzip(1) algorithm.

-HexDump output-spec
    This output filter turns maps the data into a hexadecimal dump.

-number-nonBlank output-spec
    This output filter numbers the non-blank lines, and delivers them to the following output.

-Number output-spec
    This output filter numbers the lines, and delivers them to the following output.

-PREfix string output-spec
    This output filter adds the given string to the start of each line.

-Quoted_Printable output-spec
    This output filter encodes the MIME Quoted Printable encoding. See RFC 1521 for more information.

-REVerse output-spec
    This output filter reverses the order of the characters on each line.

-Rotate13 output-spec
    This output filter is a simple Caesar-cipher encryption that replaces each English letter with the one 13 places forward or back along the alphabet. It is its own inverse.

-Rotate47 output-spec
    ROT47 is a derivative of ROT13 which, in addition to scrambling the basic letters, also treats numbers and common symbols. Instead of using the sequence A–Z as the alphabet, ROT47 uses a larger set of characters from the common character encoding known as ASCII. It is its own inverse.

-Show-All output-spec
    This is shorthand for -show-ends -show-nonprinting -show-tabs

-Show-Ends output-spec
    This output filter displays $ at the end of each line. This is shorthand for “-suffix '$'”.

-Show-NonPrinting output-spec
    This output filter uses ^ and M- notation to display non-printing characters, except for LF and TAB.

-Show-Tabs output-spec
    This output filter displays TAB as ^I and leaves all other characters unchanged.

-Squeeze_Blank output-spec
    This output filter suppress repeated empty output lines.

-SUFfix string output-spec
    This output filter adds the given string to the end of each line.

-TEE output-spec output-spec
    This output filter may be used to write the same data to two outputs. Each output may specify additional and different filters. If you need more than two, chain tee options together (having the command line parser do it makes the grammar ambiguous).

-UnExpand [ tab-width ] output-spec
    This output filter attempt to optimize leading white space output using horizontal tabs where possible.

-UnExpand_All [ tab-width ] output-spec
    This output filter attempt to optimize all white space output using horizontal tabs where possible.

-Upper_Case output-spec
    This output filter maps ASCII lower case characters to upper case.

-UUEncode output-spec
    This output filter encodes using the Unix-to-Unix encoding.

The output filters may be chained together in arbitrary combinations.

EXIT STATUS
The uncia command exits with status 1 on any error. The uncia command only exits with status 0 if there are no errors.

COPYRIGHT
uncia version
Copyright (C) Peter Miller

AUTHOR
Written by Peter Miller <millerp@canb.auug.org.au>