dieses Helferlein brauchte ich, um die Ausgabe auf einen seriell angeschlossenen Drucker zu verlangsamen, damit er sich beim Programmieren des Flashs nicht verschluckt. Mit RTS/CTS-Handshake hatte das Ding arge Probleme, und XON/XOFF-Handshake wollte gerade beim Programmieren des Flashs auch nicht so recht.
Aber man kann es auch benutzen, um einen zu schnell durchrollenden Text zu verlangsamen etc. Vielleicht findet das ja jemand nützlich.
Code: Select all
#!/usr/bin/tclsh
# slow -- reblock and slow down output.
if { $argc < 1 } { set DELAY 1000 } { set DELAY [ lindex $argv 0 ] }
if { $argc < 2 } { set BLOCKSIZE 1 } { set BLOCKSIZE [ lindex $argv 1 ] }
fconfigure stdin -encoding binary -translation binary -buffering full -buffersize $BLOCKSIZE
fconfigure stdout -encoding binary -translation binary -buffering full -buffersize $BLOCKSIZE
while {![ eof stdin ]} \
{
fcopy stdin stdout -size $BLOCKSIZE
after $DELAY
}
Code: Select all
$ cat Eingabedaten | dd bs=<BLOCKGRÖSSE> conv=sync | slow <VERZÖGERUNG> <BLOCKGRÖSSE>
Janka