bashで実行されたすべてのコマンドを/ dev/nullにリダイレクトする方法は?すべてのコマンドのbash出力とエラーのリダイレクト
これは、コマンドのために私たちがしなければならないことは明らかです:上で、さらに実行されるすべてのコマンドについて
command > /dev/null 2>&1
どのように?
bashで実行されたすべてのコマンドを/ dev/nullにリダイレクトする方法は?すべてのコマンドのbash出力とエラーのリダイレクト
これは、コマンドのために私たちがしなければならないことは明らかです:上で、さらに実行されるすべてのコマンドについて
command > /dev/null 2>&1
どのように?
単に新しいシェルを起動します。
bash >/dev/null 2>&1
今、あなたはコマンドにブラインドを入力することができます:)あなたはそのモードタイプのままにしたい場合:exit
をしかし、入力したコマンドは盲目なり、通常ではない何欲しいです。だから私は、script.sh
のようなテキストファイルを作成することをお勧めそれであなたのコマンドを配置します:
command1 foo
command2 bar
と使用してそれを実行するよりも:
bash script.sh >/dev/null 2>&1
をそのスクリプト内のすべてのコマンドの出力に含まをにリダイレクトされます/ dev/null now
スクリプトやその他の実用的な目的のためには、コマンドをグループ化するのが最適です。
exec > /dev/null 2>&1
hex2mglあなたはインタラクティブシェルでこれを行う場合は、あなたもシェルとして、もはやあなたのプロンプトが表示されません、指摘したように:それは、コマンドなしで使用exec
特にAny redirections (see Redirections) associated with a compound command apply to all commands within that compound command unless explicitly overridden.
を言うhttp://www.gnu.org/software/bash/manual/html_node/Compound-Commands.htmlをチェックそれを標準エラーに出力します。私は対話的に実行されるコマンドからのすべての出力を無視するのには意味がないので、これはスクリプトを対象としていると仮定しています:)
端末がブロックされています – TheForbidden
ブロックされていません。要求されたすべての出力(プロンプトを含む標準出力と標準エラーの両方)は、 '/ dev/null'にリダイレクトされています。 – chepner
エラー出力のみをリダイレクトしたいのですか? – TheForbidden
bash?それはコマンドですか?もちろん、 – TheForbidden
はい。新しい 'bash'シェルを起動します。 – hek2mgl
私はこれを得た: [1] 13407 のbash:2:そのようなファイルまたはディレクトリ 1: [1] + [終了127 bashの2>を/ dev/null – TheForbidden