私はbashスクリプトを書くときにこの問題に苦しんでいます。基本的には、リモートサーバー上のプログラムの時間を測定したいので、コマンド:を使用し
/usr/bin/time -f %e sh -c "my command > /dev/null 2>&1"
てプログラムを実行します。ただし、コマンド(SSH)の出力を変数にまったくキャプチャできないようです。実際、結果(時間)はstdoutに出力され続けます。
完全なコードは次のとおりです。
respond=$(ssh ${fromNode} /usr/bin/time "-f" "%e" "'sh' '-c' 'virsh migrate --live ${VM} qemu+ssh://${toNode}/system --verbose > /dev/null 2>&1'")
応答の値は空ですが、時間は標準出力に出力されます。