1

私はそうするスクリプトを書こうとしています

x =$ncore
numactrl -C $x ( time -p $exe ) > out.txt 2>&1

端末上 ( time $ exe ) > out.txt 2>&1 は思い通りに動作しました (時間と実行可能ファイルの出力を含む out.txt )

私はRed Hat 6.2を使用しており、時間はGNUバージョンではありません(-a -oオプションが機能しないという事実から推測しています)

out.txt に実行可能ファイルからの出力が必要で、最後に time コマンドからの出力が必要です。

bash スクリプトで ( を使用すると問題が発生するので、 ( time -p $exe ) を使用すると、numactl は ( を実行可能ファイルとして認識します。

numactl と time コマンドを一緒に使用して、必要な出力を得る方法はありますか?

4

1 に答える 1

2

numactrlコマンドが必要であるが、いくつかのシェル機能を使用したい場合は、コマンドとしてシェルを指定してください:

numactrl -C $x bash -c "( time -p $exe ) > out.txt 2>&1"

time -p $exebash プロンプトから、または 内で実行するbash -c場合は、bash 組み込みバージョンの time を使用しています。オプション付きの-oものは外部コマンドなので、bash から使用するにはcommand timeor/bin/timeまたはを指定する必要があります/usr/bin/time

実行するnumactrl -C $x time ...と、おそらく外部コマンドが実行されるため-o、その場合は機能するはずですが、そうでない場合は常にbash -cメソッドがあります。

のさまざまなバージョン間で出力形式が異なることに注意してくださいtime。GNU coreutils バージョンは、bash 組み込みバージョンよりも多くの情報を出力します。

于 2012-07-25T23:04:18.870 に答える