Bunu yapmak için iyi bir yol buldum. Sistemimde uzun çıkış hatları "^ M" (boşluk bıraktıktan sonra satırbaşı) ile serpiliyor. "^ M", dosyaya girdiğinizde hiç görüntülenmeyen "^ @" boş karakteriyle güzel bir şekilde değiştirilebilir.
Ben de zamanlamayı yakalarım, bu yüzden dosyayı mükemmel bir şekilde oynatmak için, aşağıdaki komutları kullanarak "^ M" yi tamamen kaldıramıyorum (çünkü scriptreplay byte sayar):
tr '\r' '\0' | sed 's/ \x0//g'
Senaryo komutumu şöyle çalıştırıyorum:
script -t -f session.log 2>timing
Peki, sonra ne yapacağım:
cat session.log | tr '\r' '\0' > typescript
scriptreplay -t timing | sed 's/ \x0//g'
İlk düzenleme (yeniden oynatmadan önce) dosyadaki bayt sayısını korur. İkinci düzenleme (tekrardan sonra) rastgele yerlerde beyaz alandan kurtulur. (Varsayılan scriptreplay öğesinin "typescript" adlı giriş dosyasını aradığını ve bu nedenle "zamanlama" işleminden sonra sağlamadığımı unutmayın.)