Die tragbare Lösung
Verwenden script
! Beispielsweise:
Persönliches Terminal:
> script -f /tmp/lecture1.scrpt #use -F instead on MacOS
> ... #start doing things here!
Präsentationsterminal:
> #after this, terminal will continuously print whatever's written to personal terminal
> tail -F /tmp/lecture1.scrpt
Wie es funktioniert
Der script
Befehl kopiert alle auf dem Terminalbildschirm geschriebenen Daten (einschließlich der von Ihnen eingegebenen Daten) in eine Datei, die als Parameter verwendet wird. Normalerweise wird alles in die Datei geschrieben, nachdem Sie das Skript beendet haben (durch Eingabe exit
). Die -f
Option bewirkt jedoch, dass script
der Puffer nach jedem Schreibvorgang geleert wird (unter MacOS ist dies -F
oder -t 0
). Anschließend können Sie im Präsentationsterminal tail -F
den Inhalt fortlaufend anzeigen, während er geschrieben wird.
Dinge zu beachten
Da ein Terminal in eine Datei schreibt und das andere liest, kann dies zwischen verschiedenen Benutzern erfolgen! Dies bedeutet, dass Sie jemanden mit sehr wenigen Berechtigungen haben können. Solange Sie die Skriptdatei an einem Ort ablegen, an dem sie gelesen werden kann, können Sie sie weiterhin präsentieren. (dh wenn Sie einen Server haben, auf den Ihre Schüler Zugriff haben, können Sie eine .scrpt-Datei erstellen, die nur für sie lesbar ist, damit sie auf ihren eigenen Bildschirmen mitlesen können.)
In Anbetracht der Art dieser Methode fährt ein Terminal und das andere sieht nur zu.
Diese Methode hat auch den zusätzlichen Vorteil, dass Sie die Spiegelung ganz einfach beenden, geheime Arbeiten ausführen und wieder mit dem Spiegeln beginnen können, ohne Ihr persönliches Terminal zu verlassen. Dies kann folgendermaßen geschehen:
Persönliches Terminal:
> exit #end script session; stop writing to /tmp/lecture1.scrpt
> ... #do secret things not safe for student eyes!
> script -f -a /tmp/lecture1.scrpt #begin writing again with -a to append
Mehr Spaß mit script
!
Der Zweck von script
ist es, Ihre Terminalsitzung aufzuzeichnen, damit sie später wiedergegeben werden kann (wir sind nur der Spezialfall der Wiedergabe während der Aufzeichnung). Um dies zu unterstützen, script
besteht die -t
Möglichkeit, das Timing zusammen mit den auf dem Bildschirm angezeigten Informationen aufzuzeichnen. Um es zu benutzen, starte deine Skriptsitzung mit:
> script -f -t 2>/tmp/lecture1.timing /tmp/lecture1.scrpt
Und spielen Sie es ab (mit Timing!) Mit:
> scriptreplay -t /tmp/lecture1.timing -s /tmp/lecture1.scrpt
Hat ein Student, der Ihnen eine E-Mail geschickt hat, gesagt, dass er krank ist und keinen Vortrag halten kann? Oder möchten Sie Ihren Schülern einfach mehr Vorlesungsmaterial geben? Wenn Sie Ihre Stimme während der Vorlesung aufzeichnen (und das Skript ungefähr zur gleichen Zeit wie die Aufzeichnung starten), können Ihre Schüler Ihre Terminalsitzung mit Ihrer Stimme wiedergeben und die gesamte Vorlesungserfahrung nutzen!
Haben Sie einen Schüler, der alle seine Videos mit 2x Geschwindigkeit abspielen möchte? scriptreplay
Nimmt man einen "Divisor", multipliziert dieser die Spielgeschwindigkeit mit! Übergeben Sie einfach -d 2
, um mit doppelter Geschwindigkeit zu spielen (beachten Sie, dass dies ein doppelter Wert ist, sodass Sie sogar die -d .5
halbe Geschwindigkeit erreichen können!).