というプログラムを実行中で、gatk-picard.sh
実行履歴/ログ(INFO
下行)を印刷しています。プログラムを完了するのに約20時間かかりますので、退勤時に実行したいのですが、自宅で実行履歴を確認します。タスクが完了したら、どのようにして自動的にこの履歴ラインを保存できますか?
試してみましたが$gatk-picard.sh > log
うまくいかないようです。
$ ./gatk-picard.sh
INFO 16:08:50,858 HelpFormatter - --------------------------------------------------------------------------------
INFO 16:08:50,861 HelpFormatter - The Genome Analysis Toolkit (GATK) v3.6-0-g89b7209, Compiled 2016/06/01 22:27:29
INFO 16:08:50,861 HelpFormatter - Copyright (c) 2010-2016 The Broad Institute
INFO 16:08:50,862 HelpFormatter - For support and documentation go to https://www.broadinstitute.org/gatk
INFO 16:08:50,862 HelpFormatter - [Fri Sep 16 16:08:50 EDT 2016] Executing on Linux 3.13.0-95-generic amd64
INFO 16:08:50,862 HelpFormatter - Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14 JdkDeflater
答え1
おそらく(ファイル記述子1、デフォルト)のstderr
代わりに(ファイル記述子2)に書いています。 (でも書き込み可能)ファイルにリダイレクトします。次のように最初のエントリにリダイレクトできます。stdout
> filename
1> filename
stdout
stderr
stdout
gatk-picard.sh 2>&1 > log
stderr
または、次のように独自のファイルに書き込むこともできます。
./gatk-picard.sh 2>log_err >log_out