Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
cowsay(1)		    General Commands Manual		     cowsay(1)

NAME
       cowsay/cowthink - configurable speaking/thinking	cow (and a bit more)

SYNOPSIS
       cowsay  [-e  eye_string]	[-f cowfile] [-h] [-l] [-n] [-T	tongue_string]
       [-W column] [-bdgpstwy]

DESCRIPTION
       Cowsay generates	an ASCII picture of a cow saying something provided by
       the user.  If run with no arguments, it accepts standard	 input,	 word-
       wraps  the message given	at about 40 columns, and prints	the cow	saying
       the given message on standard output.

       To aid in the use of arbitrary messages with arbitrary whitespace,  use
       the -n option.  If it is	specified, the given message will not be word-
       wrapped.	  This is possibly useful if you want to make the cow think or
       speak in	figlet(6).  If -n is specified,	there must not be any command-
       line arguments left after all the switches have been processed.

       The -W specifies	roughly	(where the message should be wrapped.  The de-
       fault is	equivalent to -W 40 i.e. wrap words at or before the 40th col-
       umn.

       If any command-line arguments are left over  after  all	switches  have
       been  processed,	 they  become the cow's	message.  The program will not
       accept standard input for a message in this case.

       There are several provided modes	which change the appearance of the cow
       depending on its	particular emotional/physical state.   The  -b	option
       initiates  Borg	mode;  -d  causes  the	cow to appear dead; -g invokes
       greedy mode; -p causes a	state of paranoia to come  over	 the  cow;  -s
       makes  the  cow	appear thoroughly stoned; -t yields a tired cow; -w is
       somewhat	the opposite of	-t, and	initiates wired	mode; -y brings	on the
       cow's youthful appearance.

       The user	may specify the	-e option to  select  the  appearance  of  the
       cow's  eyes,  in	 which	case  the first	two characters of the argument
       string eye_string will be used.	The default eyes are 'oo'.  The	tongue
       is similarly configurable through -T and	tongue_string; it must be  two
       characters  and does not	appear by default.  However, it	does appear in
       the 'dead' and 'stoned' modes.  Any configuration done  by  -e  and  -T
       will be lost if one of the provided modes is used.

       The  -f option specifies	a particular cow picture file (``cowfile'') to
       use.  If	the cowfile spec contains '/' then it will be interpreted as a
       path relative to	the current directory.	Otherwise, cowsay will	search
       the  path  specified  in	the COWPATH environment	variable.  To list all
       cowfiles	on the current COWPATH,	invoke cowsay with the -l switch.

       If the program is invoked as cowthink then the cow will think its  mes-
       sage instead of saying it.

COWFILE	FORMAT
       A cowfile is made up of a simple	block of perl(1) code, which assigns a
       picture	of  a  cow  to the variable $the_cow.  Should you wish to cus-
       tomize the eyes or the tongue of	the cow, then the variables $eyes  and
       $tongue may be used.  The trail leading up to the cow's message balloon
       is  composed  of	the character(s) in the	$thoughts variable.  Any back-
       slashes must be reduplicated to prevent interpolation.  The name	 of  a
       cowfile	should end with	.cow, otherwise	it is assumed not to be	a cow-
       file.  Also, at-signs (``@'') must be backslashed because that is  what
       Perl 5 expects.

COMPATIBILITY WITH OLDER VERSIONS
       What older versions? :-)

       Version	3.x is fully backward-compatible with 2.x versions.  If	you're
       still using a 1.x version, consider upgrading.  And tell	me  where  you
       got  the	 older versions, since I didn't	exactly	put them up for	world-
       wide access.

       Oh, just	so you know,  this  manual  page  documents  version  3.02  of
       cowsay.

ENVIRONMENT
       The  COWPATH  environment  variable, if present,	will be	used to	search
       for cowfiles.  It contains a colon-separated list of directories,  much
       like   PATH   or	 MANPATH.   It	should	always	contain	 the  /usr/lo-
       cal/share/cows directory, or at least a directory with  a  file	called
       default.cow in it.

FILES
       /usr/local/share/cows  holds a sample set of cowfiles.  If your COWPATH
       is not explicitly set, it automatically contains	this directory.

BUGS
       If there	are any, please	notify the author at the address below.

AUTHOR
       Tony Monroe (tony@nog.net), with	suggestions from  Shannon  Appel  (ap-
       pel@CSUA.Berkeley.EDU)  and  contributions  from	 Anthony  Polito  (as-
       polito@CSUA.Berkeley.EDU).

SEE ALSO
       perl(1),	wall(1), nwrite(1), figlet(6)

				    $Date$			     cowsay(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=cowsay&sektion=1&manpath=FreeBSD+14.3-RELEASE+and+Ports>

home | help