Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all bug

名前

       env - 変更した環境でプログラムを実行する

書式

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

説明

       環境変数 NAME を VALUE に設定し、 COMMAND を実行します。

       長いオプションで必須となっている引数は短いオプションでも必須です。

       -i, --ignore-environment
              環境変数がない状態で開始する

       -0, --null
              出力行の区切りとして改行文字ではなく NUL を使用する

       -u, --unset=NAME
              環境変数から指定した変数を削除する

       -C, --chdir=DIR
              作業ディレクトリを DIR に変更する

       -S, --split-string=S
              S を個々の引数に分割する; shebang 行で複数の引数を渡すのに使用される

       --block-signal[=SIG]
              シグナル SIG の COMMAND への配送をブロックする

       --default-signal[=SIG]
              シグナル SIG の処理をデフォルトにリセットする

       --ignore-signal[=SIG]
              シグナル SIG の処理を何もしないに設定する

       --list-signal-handling
              シグナルの処理がデフォルトと異なるものを標準エラーに表示する

       -v, --verbose
              処理ステップ毎に詳しい情報を表示する

       --help 使い方を表示して終了する

       --version
              バージョン情報を表示して終了する

       -  だけを指定した場合は -i を指定したことになります。 COMMAND が指定されなければ最終的な環
       境変数を表示します。

       SIG には、 'PIPE' のようなシグナル名、 '13' のようなシグナル番号指定できます。 SIG  が指定
       されなかった場合、既知のすべてのシグナルが対象となります。  複数のシグナルをコンマ区切りで
       指定できます。

       GNU coreutils のオンラインヘルプ: <https://www.gnu.org/software/coreutils/> 翻訳に関するバ
       グは    <https://translationproject.org/team/ja.html>    に連絡してください。   詳細な文書
       <https://www.gnu.org/software/coreutils/env>   (ローカルでは   info    '(coreutils)    env
       invocation' で参照可能)。

オプション

   スクリプトでの -S/--split-string の使い方
       -S  オプションを使うと、スクリプト内で複数の引き数を指定することができます。 1.pl という名
       前のスクリプトの最初の行が以下のようになっている場合、 このスクリプトを実行すると、

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

       perl -w -T 1.pl が実行されます。

       '-S' パラメーターを指定しない場合、 このスクリプトはおそらく以下のような感じで失敗すること
       でしょう。

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

       さらなる詳細は info 形式のドキュメントを参照してください。

   --default-signal[=SIG] の使い方
       このオプションを使うと、シグナルハンドラーに デフォルトの動作を設定できます。 これは、従来
       のシェルの trap コマンドではできません。  以下の例では、このコマンドを起動したプロセスでこ
       のシグナルが どのように処理されていたとしても、 seq は必ず SIGPIPE で終了します。

              sh -c 'env --default-signal=PIPE seq inf | head -n1'

注意

       POSIX の exec(2) のページには以下のような記載がある。
              「多くのアプリケーションは、 特定のシグナルがデフォルト動作に設定されていたりブロッ
              クされていない状態で       アプリケーションが開始される、という誤った前提を置いてい
              る。。。。  そのため、最も良いのは、明確な理由がない限りは  exec の前後でシグナルを
              ブロックしたり無視したりしないことだ。 特に、(密接に連携しているわけではない)  任意
              のプログラム間の exec では シグナルをブロックしないのがよい。」

作者

       作者 Richard Mlynarik、 David MacKenzie、および Assaf Gordon。

著作権

       Copyright  ©  2020 Free Software Foundation, Inc.  ライセンス 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.

関連項目

       sigaction(2), sigprocmask(2), signal(7)

       env の完全なマニュアルは Texinfo マニュアルとして整備されている。もし、 info および env の
       プログラムが正しくインストールされているならば、コマンド

              info env

       を使用すると完全なマニュアルを読むことができるはずだ。