Provided by: utfout_0.0.1-2_amd64 bug

NAME

       utfout - utility for producing UTF-8 output to standard streams and terminal.

SYNOPSIS

       utfout [OPTION]... [STRING]...

DESCRIPTION

       Echo strings to specified output stream(s).

OPTIONS

       -a, --intra-char=<char>
              Insert  specified  character  (which may be a 1-character escape character) between
              all output characters.

       -b, --intra-pause=<delay>
              Pause between writing each character.

       -e, --stderr
              Write subsequent strings to standard error (file descriptor 2).

       -h, --help
              This help text.

       -i, --interpret
              Interpret escape characters (default).

       -l, --literal
              Write literal strings only (disable escape characters).

       -o, --stdout
              Write subsequent strings to standard output (file descriptor 1).

       -p, --prefix=<prefix>
              Use <prefix> as escape prefix (default='\').

       -r, --repeat=<repeat>
              Repeat previous value <repeat> times.

       -s, --sleep=<delay>
              Sleep for <delay> amount of time.

       -t, --terminal
              Write subsequent strings directly to terminal.

       -u, --file-descriptor=<fd> Write to specified file descriptor.

       -x, --exit=<num>
              Exit with value <num>.

ESCAPE CHARACTERS

       utfout recognises C-style escape sequences as used by printf(1) .  By  default  an  escape
       sequence  is introduced by the backslash character ('\'), however this may be changed with
       the -p option.  utfout also supports some additional sequences:

       \0     - nul byte (hex value 0x00)

       \a     - alert (bell)

       \b     - backspace

       \c     - no further output

       \e     - escape character (used for changing terminal attributes)

       \f     - form feed

       \g     - generate pseudo-random printable character

       \n     - newline

       \oNNN  - byte with octal value NNN (1 to 3 digits)

       \r     - carriage return

       \t     - horizontal tab

       \uNNNN - 2 byte Unicode (ISO/IEC 10646) character with hex value NNNN (4 digits)

       \UNNNNNNNN
              - 4 byte Unicode (ISO/IEC 10646) character with hex value NNNNNNNN (8 digits)

       \v     - vertical tab

       \xNN   - byte with hexadecimal value NN (1 to 2 digits)

RANGE ESCAPES

       utfout also supports range escapes which allow a range of characters to be specified in  a
       compact format.

       \{N..N}
              - specify a range by two 1-byte literal characters.

       \{oNNN..oNNN}
              - specify a range by two 3-byte octal values.

       \{uNNNN..uNNNN}
              - specify a range by two 2-byte Unicode values.

       \{UNNNNNNNN..UNNNNNNNN}
              - specify a range by two 4-byte Unicode values.

       \{xNN..xNN}
              - specify a range by two 2-byte hex values.

       Note that ranges take two values of the same type and the maximum width for that type must
       be specified.

NOTES

       •   Arguments are processed in order.

       •   With the exception of '-x', arguments may be repeated any number of times.

       •   All output will be sent to standard output  until  an  output  redirection  option  is
           specified  that  changes  the  output  stream  (namely  -e or -t (or their long-option
           equivalents), or if  output  has  already  been  redirected  -o  (or  its  long-option
           equivalent)).

       •   If  <str> is the empty string ("" or '') it will be treated as \0 such that a nul byte
           will be displayed.

       •   To cancel the effect of -a, specify a null string: -a ''.

       •   If <repeat> is '-1', repeat forever.

       •   Replace the 'Z' in the range formats above with the appropriate characters.

       •   Ranges can be either ascending or descending.

       •   <delay> can take the following forms where <num> is a positive integer:

           <num>ns : nano-seconds (1/1,000,000,000 second)
           <num>us : micro-seconds (1/1,000,000 second)
           <num>ms : milli-seconds (1/1,000 second)
           <num>cs : centi-seconds (1/100 second)
           <num>ds : deci-seconds (1/10 second)
           <num>s  : seconds
           <num>m  : minutes
           <num>h  : hours
           <num>h  : days
           <num>   : seconds

           If <num> is -1, wait until any signal is received.
           If signal is SIGNUM continue, else exit immediately.

       •   Generated printable random  characters  may  not  display  unless  you  are  using  an
           appropriate font.

EXAMPLES

        # Print "foofoofoo" to stderr, followed by "barbar" to stdout.
        utfout "foo" -r 2 -o "bar" -r 1

        # Write 50 nul bytes direct to the terminal.
        utfout -t "" -r 49

        # Write continuous stream of nul bytes direct to the terminal,
        # 1 per second.
        utfout -b 1s -t '' -r -1

        # Display a greeting slowly (as a human might type)
        utfout -b 20cs "Hello, $USER.\n"

        # Display a "spinner" that loops 4 times.
        utfout -b 20cs -p % "%r|%r/%r-%r\%r" -r 3

        # Display all digits between zero and nine with a trailing
        # newline.
        utfout "\{0..9}\n"

        # Display slowly the lower-case letters of the alphabet,
        # backwards without a newline.
        utfout -b 1ds "\{z..a}"

        # Display upper-case 'ABC' with newline.
        utfout '\u0041\u0042\u0043\n'

        # Display 'foo' with newline.
        utfout '\o146\u006f\x6F\n'

        # Clear the screen.
        utfout '\n' -r $LINES

        # Write hello to stdout, stderr and the terminal.
        utfout 'hello' -t -r 1 -e -r 1

        # Display upper-case letters of the alphabet using octal
        # notation, plus a newline.
        utfout "\{\o101..\o132}"

        # Display 'h.e.l.l.o.' followed by a newline.
        utfout -a . "hello" -a '' "\n"

        # Display upper-case and lower-case letters of the alphabet
        # including the characters in-between, with a trailing newline.
        utfout "\{A..z}\n"

        # Display lower-case alphabet followed by reversed lower-case alphabet
        # with the digits zero to nine, then nine to zero on the next line.
        utfout "\{a..z}\{z..a}\n\{0..9}\{9..0}\n"

        # Display lower-case Greek letters of the alphabet.
        utfout "\{α..ω}"

        # Display cyrillic characters.
        utfout "\{Ѐ..ӿ}"

        # Display all printable ASCII characters using hex range:
        utfout "\{\x21..\x7e}"

        # Display all printable ASCII characters using 2-byte UTF-8 range:
        utfout "\{\u0021..\u007e}"

        # Display all printable ASCII characters using 4-byte UTF-8 range:
        utfout "\{\U00000021..\U0000007e}"

        # Display all braille characters.
        utfout "\{\u2800..\u28FF}"

        # Display 'WARNING' in white on red background.
        utfout '\e[37;41mWARNING\e[0m\n'

        # Generate 10 random characters.
        utfout '\g' -r 9

AUTHOR

       Written by James Hunt <james.hunt@ubuntu.com>

COPYRIGHT

       Copyright © 2012 James Hunt <james.hunt@ubuntu.com>

LICENSE

       GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
       This  is free software: you are free to change and redistribute it.  There is NO WARRANTY,
       to the extent permitted by law.

SEE ALSO

       echo(1) printf(1)