Je suis paresseux et je pourrais écrire un script pour le faire, mais je suis même trop paresseux pour penser à la façon de le faire.
Je fais souvent des choses comme:
cris$ python runexperiment.py > output.txt
cris$ cat output.txt
Parfois, lorsque vous regardez la longue sortie d'une expérience, j'aime laisser la page simplement défiler et regarder les modèles successifs et se disperser. Mais l'utilisation de chat sur un fichier avec 1 million de lignes finies dans peut-être 5 secondes. Ceci est trop rapide, même pour moi.
Y a-t-il un moyen de ralentir la vitesse de visualisation du fichier, de quelque chose comme un "utilitaire de défilement"? Je veux des lignes rapides, mais pas 200k une seconde (toutes vraisemblablement l'affichage n'enregistrerait même jamais de toute façon).
Quelque chose comme
cris$ scroll -lps=300 output.txt
Et ensuite assis et regarder 300 lignes par seconde, le passé serait idéal, j'imagine.
Je suis en retard à la fête, mais j'ai trouvé que ce serait un exercice d'apprentissage utile pour essayer Python, alors je vais mettre en place ce que j'ai obtenu:
#!/usr/bin/env python3
import argparse
from time import sleep
parser = argparse.ArgumentParser(description='Echo a file slowly')
parser.add_argument('-i',
'--input-file',
type=argparse.FileType('r'),
default='-')
parser.add_argument('-d',
'--delay-in-ms',
type=int,
default='100')
args = parser.parse_args()
for line in args.input_file:
print(line.rstrip())
sleep(args.delay_in_ms/1000.0)
Il accepte l'entrée de STDIN ou comme argument (-I) et par défaut écrit une ligne par 1/10 de seconde, mais qui peut être modifiée avec un autre argument (-D).