env - afvikling af et program i et ændret miljø
env [FLAG]... [-] [NAVN=VÆRDI]... [KOMMANDO [ARG]...]
Sæt hvert NAVN til VÆRDI i miljøet og kør KOMMANDO.
Obligatoriske argumenter til lange flag er også obligatoriske for de korte.
- -i, --ignore-environment
- start uden miljøvariable
- -0, --null
- afslut hver udlinje med NUL frem for linjeskift
- -u, --unset=NAVN
- fjern miljøvariablen NAVN
- -C, --chdir=KAT
- ændr arbejdskatalog til KAT
- -S, --split-string=S
- behandl og opdel S i adskilte argumenter; bruges til at give flere argumenter i shebang-linjer
- --block-signal[=SIG]
- blokér levering af SIG-signaler til KOMMANDO
- --default-signal[=SIG]
- nulstil håndtering af SIG-signaler til standard
- --ignore-signal[=SIG]
- sæt håndtering af SIG-signaler til ingenting
- --list-signal-handling
- vis ændrede indstillinger for signaler på stderr
- -v, --debug
- vis uddybende information om hvert trin i behandling
- --help
- vis denne hjælpetekst og afslut
- --version
- vis versionsinformation og afslut
En - for sig selv medfører -i. Hvis ingen KOMMANDO er angivet, udskriv det resulterende miljø.
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.
- 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
Tilvalget -S gør det muligt at angive flere parametre i et skript. Afvikling af et skript navngivet 1.pl indeholdende den følgende første linje:
#!/usr/bin/env -S perl -w -T
...
Vil afvikle perl -w -T 1.pl .
Uden parameteren '-S' vil skriptet sandsynligvis fejle med:
/usr/bin/env: 'perl -w -T': Ingen sådan fil eller mappe
Se den fulde dokumentation for yderligere detaljer.
Dette tilvalg gør det muligt at indstille en signalhåndtering til sin standardhandling, hvilket ikke er muligt via den traditionelle shell trap-kommando. De følgende eksempler sikrer, at seq vil blive afsluttet af SIGPIPE uanset hvordan dette signal bliver håndteret i processen, der sætter kommandoen i gang.
sh -c 'env --default-signal=PIPE seq inf | head -n1'
POSIX's exec(3p)EN sider siger:
"mange eksisterende programmer antager fejlagtigt, at de starter med bestemte signaler sat til standardhandlingen og/eller ublokeret ... Derfor er det bedst ikke at blokere eller ignorere signaler på tværs af kørbare filer uden en eksplicit grund til dette, og specielt ikke blokere signaler på tværs af kørbare filer for arbitrære (ikke tæt samarbejdende) programmer."
Skrevet af Richard Mlynarik, David MacKenzie og Assaf Gordon.
Hjælp til GNU coreutils på nettet:: <https://www.gnu.org/software/coreutils/>
Rapporter oversættelsesfejl til <https://translationproject.org/team/da.html>
Ophavsret © 2023 Free Software Foundation, Inc. Licens GPLv3+: GNU GPL version 3 eller nyere <https://gnu.org/licenses/gpl.html>.
Dette er et frit program: du kan frit ændre og videredistribuere det. Der gives INGEN GARANTI, i den grad som loven tillader dette.