Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

シェルスクリプト内のコマンドのエラー出力をファイルに一括リダイレクト

   

通常、シェルスクリプトのエラー出力をファイルに保存したい場合、以下のように、「コマンド 2>ファイル名」 でファイルに追記でリダイレクトすることがあります。

#!/bin/bash

ls /hoge 2>> err.log
cat /hoge 2>> err.log

 

実行例

$ ./myscript.sh
$ cat err.log
ls: '/hoge' にアクセスできません: No such file or directory
cat: /hoge: No such file or directory

 

ただ、シェルスクリプトが長くなってくると、全てのコマンドにリダイレクトを記述するのは面倒です。そういった場合は、exec を使って一括でリダイレクトすることが可能です。

$ cat myscript.sh
#!/bin/bash

exec 2> err2.log
ls /hoge
cat /hoge

$ ./myscript.sh
$ cat err2.log
ls: '/hoge' にアクセスできません: No such file or directory
cat: /hoge: No such file or directory

 

 

 - プログラミング

336px

Message

メールアドレスが公開されることはありません。

  関連記事

no image
ソースコードを読むためのツール

CodeReadingWikiを改造してみました  →  こちら 現在多くのアプ …

no image
VARDIA RD-S601購入

このページへのアクセスが多いので、その後のレポートにリンクを張っておきます 東芝 …

no image
or条件でのgrep

普段使ったことなかったので覚え書き。 grep で複数の文字列をor条件でマッチ …

no image
bashで配列のエクスポートができない@bash 3.2

bashにおいて、サブシェル(呼び出し先の別のシェル)内で呼び出し元の変数を参照 …

no image
シェルで逐一時間表示@bash

デバッグを目的に、 逐一コマンド実行時に時間を表示させたい場合があります。 $ …

no image
Java スクリプト API

Javascriptではありません。Java スクリプト APIです。 JRub …

no image
screenコマンド覚え書き@Linux

ssh接続が切れても作業環境を保てたり、複数画面を切り替えられたり、画面上の文字 …

no image
CodeReadingWiki 改造版でソースコード解読

etherさん作成のCodeReadingWiki が、ソースコードを読むのにす …

no image
マネージドBeanのスレッドセーフについて

サーブレットは、web.xmlのservlet要素毎にひとつつくられるため、複数 …

no image
Mercurial 覚え書き@Fedora 13

分散型のバージョン管理システムである、Mercurial を使ってみました。 最 …