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

FreeBSD Manual Pages

  
 
  

home | help
ENV(1)				 User Commands				ENV(1)

NAME
       env - run a program in a	modified environment

SYNOPSIS
       env [OPTION]... [-] [NAME=VALUE]... [COMMAND [ARG]...]

DESCRIPTION
       Set each	NAME to	VALUE in the environment and run COMMAND.

       Mandatory  arguments  to	 long  options are mandatory for short options
       too.

       -a, --argv0=ARG
	      pass ARG as the zeroth argument of COMMAND

       -i, --ignore-environment
	      start with an empty environment

       -0, --null
	      end each output line with	NUL, not newline

       -u, --unset=NAME
	      remove variable from the environment

       -C, --chdir=DIR
	      change working directory to DIR

       -S, --split-string=S
	      process and split	S into separate	arguments; used	to pass	multi-
	      ple arguments on shebang lines

       --block-signal[=SIG]
	      block delivery of	SIG signal(s) to COMMAND

       --default-signal[=SIG]
	      reset handling of	SIG signal(s) to the default

       --ignore-signal[=SIG]
	      set handling of SIG signal(s) to do nothing

       --list-signal-handling
	      list non default signal handling to stderr

       -v, --debug
	      print verbose information	for each processing step

       --help display this help	and exit

       --version
	      output version information and exit

       A mere -	implies	-i.  If	no COMMAND, print the resulting	environment.

       SIG may be a signal name	like 'PIPE', or	a  signal  number  like	 '13'.
       Without	SIG,  all known	signals	are included.  Multiple	signals	can be
       comma-separated.	 An empty SIG argument is a no-op.

   Exit	status:
       125    if the env command itself	fails

       126    if COMMAND is found but cannot be	invoked

       127    if COMMAND cannot	be found

       -      the exit status of COMMAND otherwise

SCRIPT OPTION HANDLING
       The -S option allows specifying multiple	arguments in a	script.	  Run-
       ning a script named 1.pl	containing the following first line:

	      #!/usr/bin/env -S	perl -w	-T
	      ...

       Will execute perl -w -T 1.pl

       Without the '-S'	parameter the script will likely fail with:

	      /usr/bin/env: 'perl -w -T': No such file or directory

       See the full documentation for more details.

NOTES
       POSIX's exec(3p)	pages says:
	      "many  existing applications wrongly assume that they start with
	      certain signals set to the default action	 and/or	 unblocked....
	      Therefore,  it is	best not to block or ignore signals across ex-
	      ecs without explicit reason to do	 so,  and  especially  not  to
	      block  signals  across execs of arbitrary	(not closely cooperat-
	      ing) programs."

AUTHOR
       Written by Richard Mlynarik, David MacKenzie, and Assaf Gordon.

REPORTING BUGS
       GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
       Report any translation bugs to <https://translationproject.org/team/>

COPYRIGHT
       Copyright (C) 2025 Free Software	Foundation, Inc.  License GPLv3+:  GNU
       GPL version 3 or	later <https://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
       sigaction(2), sigprocmask(2), signal(7)

       Full documentation <https://www.gnu.org/software/coreutils/env>
       or available locally via: info '(coreutils) env invocation'

GNU coreutils 9.6		 January 2025				ENV(1)

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

home | help