102 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			102 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .TH ENV 1
 | |
| .SH NAME
 | |
| env \- set environment for command
 | |
| .SH SYNOPSIS
 | |
| .B env
 | |
| .RB [ \-ia ]
 | |
| .RI [ name\fB=\fIvalue "] ..."
 | |
| .RI [ utility
 | |
| .RI [ argument "...]]"
 | |
| .B printenv
 | |
| .RB [ \-ia ]
 | |
| .RI [ name\fB=\fIvalue "] ..."
 | |
| .RI [ utility
 | |
| .RI [ argument "...]]"
 | |
| .SH DESCRIPTION
 | |
| .B Env
 | |
| modifies its environment according to the
 | |
| .IB name = value
 | |
| arguments, and executes
 | |
| .I utility
 | |
| with the given arguments and the modified environment.
 | |
| .PP
 | |
| If no utility is specified then the modified environment is printed as
 | |
| .IB name = value
 | |
| strings, one per line.
 | |
| .PP
 | |
| .B printenv
 | |
| is identical to env in every way and is included for backward compatibility
 | |
| .SH OPTIONS
 | |
| .TP
 | |
| .B \-i
 | |
| Use exactly the environment specified by the arguments; the inherited
 | |
| environment is ignored.
 | |
| .TP
 | |
| .B \-a
 | |
| Specify all arguments for the utility, i.e. the first of the arguments is
 | |
| used as
 | |
| .BR "argv[0]" ,
 | |
| the program name.  Normally the program name is
 | |
| .I utility
 | |
| itself.
 | |
| .SH ENVIRONMENT
 | |
| .TP 8n
 | |
| .B PATH
 | |
| The path used to find utility.  It is as modified by
 | |
| .BR env ,
 | |
| i.e.
 | |
| .B not
 | |
| the inherited
 | |
| .BR PATH .
 | |
| .SH "SEE ALSO"
 | |
| .BR sh (1),
 | |
| .BR execvp (3),
 | |
| .BR environ (5).
 | |
| .SH DIAGNOSTICS
 | |
| The return code is
 | |
| .B 0
 | |
| after successfully printing the environment,
 | |
| .B 1
 | |
| on an error within
 | |
| .BR env ,
 | |
| .B 126
 | |
| if the
 | |
| .I utility
 | |
| could not be executed, or
 | |
| .B 127
 | |
| if
 | |
| .I utility
 | |
| could not be found.  Appropriate diagnostic messages are printed on standard
 | |
| error.
 | |
| If
 | |
| .I utility
 | |
| can be executed then it replaces
 | |
| .BR env ,
 | |
| so the return code is then the return code of
 | |
| .IR utility .
 | |
| .SH NOTES
 | |
| When run from the standard shell
 | |
| .B env
 | |
| is only useful with options or without arguments.  Otherwise the shell can
 | |
| do exactly what
 | |
| .B env
 | |
| can do, simply omit the word "env" on the command line.
 | |
| .PP
 | |
| One interesting use of
 | |
| .B env
 | |
| is with #! on the first line of a script to forge a PATH search for an
 | |
| interpreter.  For example:
 | |
| .PP
 | |
| .RS
 | |
| #!/usr/bin/env perl
 | |
| .RE
 | |
| .PP
 | |
| This will find the Perl interpreter if it is within the user's PATH.  Most
 | |
| UNIX-like systems have
 | |
| .B env
 | |
| in /usr/bin, but
 | |
| .B perl
 | |
| may be anywhere.
 | |
| .SH AUTHOR
 | |
| Kees J. Bot <kjb@cs.vu.nl>
 | 
