• ベストアンサー

shell の time コマンドの結果をファイルに出力する方法(AIX)

AIX4.3 の環境でプログラムのパフォーマンスを確認しようと思っています。「time XXXXX 2> perform.log」で標準エラー出力をファイルに書き出そうとしているのですがうまくいきません。time コマンドのパフォーマンス結果は標準エラー出力に書き出されると思うのですが、リダイレクトしたファイルは何も書かれていません。画面にtime コマンドの結果が表示されるだけです。time コマンドではなく通常のエラーは標準エラー出力からファイルに書き出すことはできます。原因がわからずこまっています。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

 お使いのシェルの仕様にもよると思いますが、 (time XXXX) 2> perform.log でどうでしょうか?  手元の cygwin の bash ではうまく行きました。  time の出力は、コマンドではなくシェル自身の出力なので、() で括ってやらないとリダイレクトできないものと思われます。

osiete2345
質問者

お礼

ありがとうございます。回答いただいたやりかたでうまくいきました。あと、 /bin/ksh/time 2> xxxx.log でもうまくいきました。/bin/kshはパスとして設定されているのですが、time と /bin/ksh/time では動きが少し違うようです。不思議に思っていました。ともかく解決しました。ありがとうございます。

その他の回答 (1)

回答No.2

あなたがお使いのSHELLによって動作が変わりますが、 % (time XXXXX) 2> perform.log としてみてはどうでしょうか?

関連するQ&A

  • コマンド結果のリダイレクト

    UNIXコマンドで「sar」がありますが、 その中のオプション「-o」を使用しないで ファイルにリダイレクトをしたいです。 なお、その際にバックグランドで実行しています。 sarコマンドは長時間動かし途中でリダイレクト結果をviewなどで見たいのですがどうしたらよいでしょうか? ex) sar 5 10000 > log.txt & これだと、sarコマンドが終了しないとlog.txtに出力されません。いつでもviewなどで最新のlog.txtを見たいです

  • コマンド「dir」の結果を、テキストに出力

    batファイルを使用して、「dir」コマンドの結果を、既存のテキストファイル「dir.log」に出力したいのですが、実装方法を教えていただけないでしょうか? 詳細: ・dirバッチ:C:\work\dir.bat ・ログファイル:C:\work\dir.log ・dirで出力したいフォルダ:D:\work\配下 以下のリダイレクト?を使用して上書きしたいです。 dir >> dir.log どうか、ご教授お願いいたします。

  • teeコマンドを使わずにUNIXで標準出力とエラー出力を、ファイルと標準出力の両方に出すには?

    UNIX系のBシェルで、 コマンドを実行して、 その標準出力とエラー出力をログファイルに出力し、 かつ、同じものを標準出力にも出力したいのです。 また、その後でコマンドの戻り値$?をエラーチェックしたいです。 このため、パイプでteeコマンドを使用すると戻り値が上書きされてしまいます。 いったん一時ファイルに出力するしかないのでしょうか?

  • dumpコマンドのファイルへのリダイレクトについて

    Linux(centOS)においてdumpコマンドの標準出力した出力結果をファイルに出力しようと思い 以下のコマンドを実行してみましたがファイルに結果は出力されませんでした。 ・dump 0af <target> <source> >> a.log 色々と調べた結果以下のコマンドで結果を取得することはできたのですが ・dump 0af <target> <source> 2>> a.log 私の認識ではファイル・ディスクリプタ2は標準エラー出力と認識しているのですが なぜ2で結果が得られたのかがわかりません。(ちなみにdump処理結果はエラーではありませんでした) 他のパターンも試してみましたが以下のような結果になっています ・dump 0af <target> <source> >> a.log → 出力されず ・dump 0af <target> <source> 1>> a.log → 出力されず ・dump 0af <target> <source> 2>> a.log → 出力された どなたかわかる方がいらっしゃいましたらご教授願います

  • 処理結果(標準出力と標準エラー出力)をファイルと画面の両方に出力する方

    処理結果(標準出力と標準エラー出力)をファイルと画面の両方に出力する方法はありますか? 当方 処理結果(標準出力と標準エラー出力)をファイルに出力する際に iroirona_command > log.log 1>&2 ・・・ファイルに出力されるが画面には表示されない。 iroirona_command ・・・画面には表示されるがファイルには出力されない。 と書いて標準出力と標準エラー出力を出力させているのですが、 ファイルと画面の2つの出力先に出力したいと考えています。 可能なのでしょうか? 環境 Windows XP SP3

  • rdコマンドでログ出力方法

    バッチファイルのrdコマンドでログを出力させたいのですが、ログが出力されません エラー出力は出力されるのですが、標準出力が出力されず、困っています 以下フォルダ構成 -sample.bat -test -log.txt 以下、バッチのサンプルです sample.bat rd /s /q test >> log.txt testフォルダは削除されるのですが、ログに処理内容が記述されず困っています。 また、エラー出力 rd /s /q test2 >> log.txt 2>&1 とするとエラー結果がlog.txtに出力されます。 正常に処理されたときの出力方法ご存知の方いらっしゃいましたらご教授ください よろしくお願いいたします

  • ftpコマンド出力結果の取得

    ftpコマンドのバッチ処理によってファイルの一覧の結果を取得したいのですが、 リダイレクション等を用いても取得できません。 どのようにすればいいか教えてください。 **************状況************* OSおよびOSレベル:AIX5.2 シェル:Kシェル コマンドファイルの中身(ftp.txt) cat << EOF | ftp -n open SERVER user USER PW cd PATH ls -l bye EOF SERVER:実際のサーバー名 USER:実際のユーザー名 PW:実際のパスワード PATH:実際のパス これを以下のように実行し、結果を取得しようとしました。 # ./cmd.ftp > log しかし、出力ファイルlogの中身はカラっぽでした。 ところが、リダイレクションを外し、コマンドファイルのみを実行すると、結果が画面に表示されます。 何故、画面には表示されるのに、リダイレクションやパイプでは結果が渡されないのかが分かりません。

  • AIX6でファイルのタイムスタンプの秒を表示するコ

    linuxでは以下のコマンドで確認できました。 ls --full-time または ls -l --time-style=”+%Y/%m/%d %H:%M:%S” AIX6で同様のコマンドを実行してもエラーになります。 ls以外でもかまわないので、 ファイルのタイムスタンプを秒まで表示する方法がありましたら、 教えてください。

  • コンソール出力をテキストに出力する方法(コンソール出力は残しつつ)

    【質問】  Perl内部で実行される実行ファイル(.exe)のコンソール出力(STDOUT,STDERR)をテキストファイルに出力したい。(Perlのコンソール出力も含む。) ※コンソール出力は残しつつ。 (コマンドプロンプトの)パイプとリダイレクトを使用して上手くいくかと思ったのですが、標準出力と標準エラーとでは標準エラーが先に出力されてしまい、本来出力される順番で出力されない。(標準出力はバッファにたまるため??) 何かいい方法はありませんでしょうか? 【環境】  Windows2000  Active Perl 5.8.8

    • ベストアンサー
    • Perl
  • AIX上でのアカウント操作ログ

    AIX v5.3上で実行されたユーザの追加、削除、アカウントロック及びパスワードリセットをログ等から一覧でレポートに出力したいと言う要望をお客様より受けているのですが、具体的な実現方法がわかりません。 上記動作のログは標準のsyslogで出力されるものでしょうか? もしくは、何らかのコマンドやシェル等の起動結果をリダイレクトしてログに落とす必要があるのでしょうか? AIXに触れるのが初めてなもので、質問させて頂きました。 ユーザアカウント操作に対するログの出力先をご存知でしたら、教えてください。 宜しくお願い申し上げます。