scriptreplay - タイミング情報を使って、タイプスクリプトを再生する
scriptreplay [options] [-t] timingfile [typescript [divisor]]
このプログラムは、タイプスクリプトを再生する。その際、タイミング情報を使って、 スクリプトが記録されたときの、元の出力表示と同じリズムで、出力が行われるようにする。
この再生は、記録された情報を再表示するだけである。 タイプスクリプトが記録されていたときに実行されていたプログラムが、再実行されるわけではない。 単に同じ情報を表示しているだけなので、 scriptreplay が正確に動作すると保証できるのは、 タイプスクリプトが記録されたのと同じタイプの端末で実行される場合だけである。 そうでない場合は、タイプスクリプト中のどのエスケープ文字も、scriptreplay がその出力を送り出す端末によって異なった解釈をされるかもしれない。
タイミング情報とは、script(1) が --log-timing によって指定されたファイルに出力するものである。
デフォルトでは、再生対象になるタイプスクリプトには、typescript という名前が付いていることになっている。しかし、他のファイル名を 2 番目のパラメーターとして、あるいは --log-out オプションで指定することもできる。
3 番目のパラメーターや --divisor を指定すると、それはスピードアップ乗数として使用される。 たとえば、スピードアップ乗数に 2 を指定すると、scriptreplay は、オリジナルセッションの 2 倍の速度で再生を行う。 0.1 を指定すると、オリジナルセッションより動作速度が 10 倍遅くなる。
-I, --log-in file
script の端末入力を記録しているファイル。
-O, --log-out file
script の端末出力を記録しているファイル。
-B, --log-io file
script の端末入力と端末出力を記録しているファイル。
-t, --timing file
script のタイミング出力を記録しているファイル。 このオプションは、旧式の引数に優先する。
-T, --log-timing file
このオプションは、-t の別名である。 script(1) のコマンドラインオプションと名前を合わせるために維持されている。
-s, --typescript file
script の端末出力を記録しているファイル。--log-out の別名だが、非推奨である。このオプションは、旧式の引数に優先する。
-c, --cr-mode mode
ログファイルにある CR 文字 (0x0D, キャリッジリターン) の使い方を指定する。 デフォルトのモードは、auto であり、その場合、標準入力のログでは、CR は改行に置き換えられる。 そうしないと、scriptreplay が同一行を上書きすることになるからである。 他のモードに never と always がある。
-d, --divisor number
再生の表示を number 倍にスピードアップする。この引数 number は浮動小数点数である。このオプションが divisor (除数) と呼ばれるのは、タイミングをこの要素で割るからである。 このオプションは、旧式の引数に優先する。
-m, --maxdelay number
表示の更新間の待ち時間の最大を number 秒にする。 この引数 number は浮動小数点数である。 このオプションを使えば、タイプスクリプトの再生で長い間が明いてしまうのを避けることができる。
--summary
指定されたタイミングファイルに記録されたセッションについての詳細を表示して、終了する。 対象になるセッションは、advanced フォーマットで記録されていなければならない (詳しいことは、script(1) のオプション --logging-format の説明を参照のこと)。
-x, --stream type
指定されたストリームのみを scriptreplay に表示させる。 指定できるストリームのタイプは、in, out, signal, info である。 このオプションは、マルチストリームのログに (たとえば、--log-io を使ったときに) 指定したストリームのデータだけを表示させたい場合に利用するとよい。
-h, --help
ヘルプを表示して終了する。
-V, --version
バージョンを表示して終了する。
% script --log-timing file.tm --log-out script.out Script started, file is script.out % ls <etc, etc> % exit Script done, file is script.out % scriptreplay --log-timing file.tm --log-out script.out
scriptreplay プログラムの原型を書いたのは、
である。 プログラムを C で書き直したのは、以下のものである。
,
Copyright (co 2008 James Youngman
Copyright (co 2008-2019 Karel Zak
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Released under the GNU General Public License version 2 or later.
script(1), scriptlive(1)
バグ報告は、 以下にある issue トラッカーを利用すること。 <https://github.com/util-linux/util-linux/issues>.
scriptreplay コマンドは util-linux パッケージの一部であり、 以下からダウンロードできる。 Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.