人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

bash の shell のエラー出力を捕らえて、ログとして出力したいのです。ファイルを新たに作成して出力するだけなら>& で簡単にできますが、これを追記する形の >>& に書き換えるとエラーになります。追記するにはどうしたらいいのでしょうか? 簡単に書く方法あるのでしょうか?

●質問者: isogaya
●カテゴリ:コンピュータ 科学・統計資料
✍キーワード:bash エラー ファイル ログ 作成
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● dev_zer0
●30ポイント

http://www.linux.or.jp/JF/JFdocs/Bash-Prog-Intro-HOWTO-3.html#ss...


bashの場合、標準出力は1, 標準出力は2で出力できます。

例えば

command 2>> add.txt

とすれば、標準エラー出力の追記が出来ます。


もし、標準出力、標準エラー出力共に同一のファイルに追記したい場合は

(command 2>&1) >> add.txt

とする必要があります


2 ● toohigh
●20ポイント

/path/to/somecmd >> stderr.log 2>&1 >> stdout.log

こんな感じでいかがでしょうか。

http://q.hatena.ne.jp/


3 ● zzz_1980
●20ポイント

2>>filename でいいのでは。

$ cat hoge.sh
#!/usr/local/bin/bash
echo asdf
zzzzzzz
$ ./hoge.sh
asdf
./hoge.sh: line 3: zzzzzzz: command not found
$ ./hoge.sh 2>>errlog.txt
asdf
$ ./hoge.sh 2>>errlog.txt
asdf
$ cat errlog.txt
./hoge.sh: line 3: zzzzzzz: command not found
./hoge.sh: line 3: zzzzzzz: command not found

http://www.hatena.ne.jp


4 ● Marin_MTB
●20ポイント

Google

$ ls -la 2>> test.txt

これではダメですか?

csh形式にこだわらない形ですが…。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ