Usage - Description - Example
- Options - Limitations
tuniq [log logfile] [options] [from infile] [to outfile] expr [...]
tuniq prints, to outfile, the lines in infile that evaluate uniquely on the given expression(s).
Expressions are as for tcols.
infile must be an ASCII text file. tuniq sees each input line as a row of (by default) whitespace-separated fields; see tcols for more info.
tuniq ignores empty (whitespace only) input lines.
The output lines are identical to the input lines.
If you don't specify infile, tuniq reads from standard input.
If you don't specify outfile, tuniq writes to standard output.
If you don't specify logfile, tuniq writes error messages to standard
error.
Consider the file "records.txt":
Band "The Band" 1969 LP "Violent Femmes" "Violent Femmes" 1983 LP "Violent Femmes" "Violent Femmes" 1983 CD Beatles Revolver 1966 CD Beatles "Rubber Soul" 1965 CD "Waits, Tom" Swordfishtrombones 1983 CD Band "Music From Big Pink" 1968 LP "Waits, Tom" Swordfishtrombones 1983 LP
The command:
tuniq from records.txt $1 $2 $3
prints the record list without CD/LP duplicates:
Band "The Band" 1969 LP "Violent Femmes" "Violent Femmes" 1983 LP Beatles Revolver 1966 CD Beatles "Rubber Soul" 1965 CD "Waits, Tom" Swordfishtrombones 1983 CD Band "Music From Big Pink" 1968 LP
-iC : Separate fields in infile by character C (except \). Use \t to form a tab.
-v : Print version banner and usage info to standard error (or logfile, if given), then exit.
-he : Print summary of expressions usage to standard output, then exit.
-hf : Print summary of all functions to standard output, then exit.
-hf name : Print summary of named function to standard output, then exit.
tuniq has the same limitations as tcols.
tuniq runs out of memory when infile, or the expressions evaluated thereof, are too large.