Záznam relace terminálu může být důležitý pro to, aby někomu pomohl naučit se proces, sdílet informace srozumitelným způsobem a také prezentovat řadu příkazů správným způsobem. Ať už je účel jakýkoli, existuje mnoho případů, kdy kopírování a vkládání textu z terminálu nebude příliš užitečné, zatímco zachycení videa procesu je značně přitažené za vlasy a nemusí být vždy možné. V tomto rychlém průvodci se podíváme na nejjednodušší způsob, jak zaznamenat a sdílet relaci terminálu ve formátu .gif.
Předpoklady
Pokud chcete pouze nahrávat své relace terminálu a mít možnost přehrát záznam ve svém terminálu nebo je sdílet s lidmi, kteří budou používat terminál pro přehrávání, pak jediný nástroj, který budete potřebovat, se nazývá „ttyrec“. Uživatelé Ubuntu jej mohou nainstalovat vložením následujícího příkazu do terminálu:
sudo apt-get install ttyrec
Pokud chcete z nahrávky vytvořit soubor .gif a mít možnost jej sdílet s lidmi, kteří terminál nepoužívají, publikujte jej na webových stránkách nebo jednoduše mějte .gif po ruce pro případ, že jej budete potřebovat místo psaní příkazy, budete muset nainstalovat dva další balíčky. První z nich je „imagemagick“, kterou můžete nainstalovat pomocí:
sudo apt-get install imagemagick
a druhý je „tty2gif“, který lze stáhnout zde. Ten má závislost, se kterou se lze spokojit:
sudo apt-get install python-opster
Snímání
Chcete-li začít zachycovat relaci terminálu, vše, co musíte udělat, je jednoduše začít s „ttyrec“ + enter. Tím se spustí nástroj pro nahrávání v reálném čase, který poběží na pozadí, dokud nezadáme „exit“ nebo nestiskneme „Ctrl+D“. Ve výchozím nastavení ttyrec vytvoří soubor s názvem „ttyrecord“ v cíli relace terminálu, který je ve výchozím nastavení „Home“.
Hraje
Přehrání souboru je stejně jednoduché jako otevření terminálu na cílovém místě souboru „ttyrecord“ a použití příkazu „ttyplay“ následovaného názvem nahrávky (v našem případě je to ttyrecord, ale můžete to změnit na cokoliv chcete).
To bude mít za následek přehrávání zaznamenané relace v reálném čase a včetně oprav při psaní (všechny akce jsou zaznamenány). Bude to vypadat jako úplně normální automatizovaná terminálová relace, ale příkazy a jejich zjevné provádění se zjevně ve skutečnosti v systému neaplikují, protože jsou pouze reprodukovány jako záznam.
Je také důležité poznamenat, že přehrávání záznamu terminálové relace je zcela řiditelné. Rychlost přehrávání můžete zdvojnásobit stisknutím tlačítka „+“, zpomalit jej tlačítkem „-“, pozastavit jej pomocí „0“ a obnovit normální rychlostí pomocí „1“.
Převod do formátu GIF
Z důvodu pohodlí by mnozí z nás rádi převedli zaznamenanou relaci do souboru .gif, a to je velmi snadné. Zde je postup:
Nejprve rozbalte stažený soubor „tty2gif.tar.bz2“ otevřením terminálu v umístění stahování a zadáním následujícího příkazu:
tar xvfj tty2gif.tar.bz2
Dále zkopírujte výsledný soubor „tty2gif.py“ do cílového umístění souboru „ttyrecord“ (nebo jakéhokoli názvu, který jste zadali) a poté otevřete terminál v tomto cíli a zadejte příkaz:
python tty2gif.py typing ttyrecord
Pokud se v tomto kroku zobrazují chyby, zkontrolujte, zda jste nainstalovali balíček „python-opster“. Pokud chyby přetrvávají, zadejte postupně následující dva příkazy:
sudo apt-get install xdotool
export WINDOWID=$(xdotool getwindowfocus)
poté zopakujte „python tty2gif.py zadáním ttyrecord“ a nyní byste měli vidět několik souborů gif, které byly vytvořeny v umístění „ttyrecord“
Dalším krokem je sjednocení všech těchto gifů, které odpovídají jednotlivým akcím terminálové relace, do jednoho finálního .gif souboru pomocí utility imagemagick. Chcete-li to provést, otevřete terminál v cíli a vložte následující příkaz:
convert -delay 25 -loop 0 *.gif example.gif
Výsledný soubor můžete pojmenovat podle libosti (použil jsem „example.gif“) a podle potřeby můžete změnit nastavení zpoždění a smyčky. Zde je výsledný soubor tohoto rychlého návodu: