前提・実現したいこと
nohupコマンドなどで、ログアウトしてもバックグラウンドでジョブが継続するようにしながら、
その処理時間をtimeコマンドで計測し、その結果を何らかのファイルに出力したいです。
例えば、
(time sleep 2) 2> sleep2.txt
や
(time sleep 2) >& sleep2.txt
を実行すると、
sleep2.txtの中身は以下のようになりましたが、
real 0m2.001s user 0m0.000s sys 0m0.002s sleep2.txt (END)
これを、ログアウトしてもジョブが継続するようにして、やりたいです。
(sleep 2はただの例で、もっと時間のかかる処理をやりたいです。)
発生している問題・エラーメッセージ
nohupを使ってみましたが、sleep2.txtの中身が、以下のようになってしまいました。
確かに時間が出力されましたが、
実現したいのは、timeの出力と同様の、
real, user, sysについての、1/1000 sec単位での出力なのです。
nohup: appending output to `nohup.out' 0.00user 0.00system 0:02.00elapsed 0%CPU (0avgtext+0avgdata 0maxresident)k 0inputs+0outputs (0major+158minor)pagefaults 0swaps sleep2.txt (END)
該当のソースコード
以下の4つのコマンドを試しましたが、結果は同じでした。
nohup time sleep 2 >& sleep2.txt & nohup time sleep 2 > sleep2.txt & nohup time sleep 2 2> sleep2.txt & (nohup time sleep 2) 2> sleep2.txt &
試したこと
これらのサイトを参考に、上記の4つのコマンドを打ちましたが、うまくいきませんでした。
http://q.hatena.ne.jp/1361965120
http://md.atwired.com/?eid=1423677
補足情報(FW/ツールのバージョンなど)
Ubuntu 16.04.4 LTS
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/04 15:19