Cách ghi lại phiên terminal của bạn trên Linux

theanh

Administrator
Nhân viên
Ghi lại phiên làm việc của thiết bị đầu cuối có thể quan trọng trong việc giúp ai đó học một quy trình, chia sẻ thông tin theo cách dễ hiểu và cũng trình bày một loạt lệnh theo cách phù hợp. Dù mục đích là gì, có nhiều lúc việc sao chép-dán văn bản từ thiết bị đầu cuối sẽ không hữu ích lắm trong khi việc ghi lại video về quy trình là khá xa vời và có thể không phải lúc nào cũng khả thi. Trong hướng dẫn nhanh này, chúng ta sẽ xem xét cách dễ nhất để ghi lại và chia sẻ phiên đầu cuối ở định dạng .gif.


Điều kiện tiên quyết​

Nếu bạn chỉ muốn ghi lại các phiên đầu cuối của mình và có thể phát bản ghi trong đầu cuối hoặc chia sẻ chúng với những người sẽ sử dụng đầu cuối để phát lại, thì công cụ duy nhất bạn cần có tên là "ttyrec". Người dùng Ubuntu có thể cài đặt bằng cách chèn lệnh sau vào terminal:
Mã:
sudo apt-get install ttyrec
Nếu bạn muốn tạo tệp .gif từ bản ghi và có thể chia sẻ tệp đó với những người không sử dụng terminal, xuất bản tệp đó trên các trang web hoặc chỉ cần giữ tệp .gif tiện dụng để sử dụng khi cần thay vì các lệnh đã viết, bạn sẽ phải cài đặt hai gói bổ sung. Gói đầu tiên là “imagemagick” mà bạn có thể cài đặt bằng:
Mã:
sudo apt-get install imagemagick
và gói thứ hai là “tty2gif” mà bạn có thể tải xuống từ đây. Gói sau có một phụ thuộc có thể được đáp ứng bằng:
Mã:
sudo apt-get install python-opster

Ghi lại​

Để bắt đầu ghi lại phiên terminal, tất cả những gì bạn cần làm chỉ là bắt đầu bằng “ttyrec” + enter. Thao tác này sẽ khởi chạy công cụ ghi âm thời gian thực chạy ở chế độ nền cho đến khi chúng ta nhập “exit” hoặc nhấn “Ctrl+D”. Theo mặc định, ttyrec tạo một tệp có tên “ttyrecord” tại đích của phiên thiết bị đầu cuối mà theo mặc định là “Home”.








Phát​

Việc phát tệp rất đơn giản, chỉ cần mở một thiết bị đầu cuối tại đích của tệp “ttyrecord” và sử dụng lệnh “ttyplay” theo sau là tên của bản ghi âm (trong trường hợp của chúng tôi là ttyrecord nhưng bạn có thể thay đổi thành bất kỳ tên nào bạn muốn).



Thao tác này sẽ phát lại phiên đã ghi, theo thời gian thực và bao gồm cả các sửa lỗi khi nhập (tất cả các hành động đều được ghi lại). Điều này sẽ trông giống như một phiên đầu cuối tự động hoàn toàn bình thường, nhưng các lệnh và cách thực thi rõ ràng của chúng rõ ràng không thực sự được áp dụng cho hệ thống, vì chúng chỉ được tái tạo dưới dạng bản ghi.

Điều quan trọng cần lưu ý là việc phát lại bản ghi phiên đầu cuối hoàn toàn có thể kiểm soát được. Bạn có thể tăng gấp đôi tốc độ phát lại bằng cách nhấn nút "+", làm chậm lại bằng nút "-", tạm dừng bằng "0" và tiếp tục ở tốc độ bình thường bằng "1".


Chuyển đổi thành .gif​

Vì lý do thuận tiện, nhiều người trong chúng ta muốn chuyển đổi phiên đã ghi thành tệp .gif và điều đó rất dễ thực hiện. Sau đây là cách thực hiện:

Đầu tiên, giải nén “tty2gif.tar.bz2” đã tải xuống bằng cách mở một terminal tại vị trí tải xuống và nhập lệnh sau:
Mã:
tar xvfj tty2gif.tar.bz2
Tiếp theo, sao chép tệp “tty2gif.py kết quả vào đích của tệp “ttyrecord” (hoặc bất kỳ tên nào bạn đã chỉ định), sau đó mở một terminal tại đích đó và nhập lệnh:
Mã:
python tty2gif.py gõ ttyrecord
Nếu bạn gặp lỗi ở bước này, hãy kiểm tra xem bạn đã cài đặt gói “python-opster” chưa. Nếu lỗi vẫn tiếp diễn, hãy nhập hai lệnh sau liên tiếp:
Mã:
sudo apt-get install xdotool
export WINDOWID=$(xdotool getwindowfocus)
sau đó lặp lại lệnh “python tty2gif.py gõ ttyrecord ” và bây giờ bạn sẽ thấy một số tệp gif được tạo ở vị trí của “ttyrecord”



Bước tiếp theo là hợp nhất tất cả các tệp gif này tương ứng với các hành động phiên đầu cuối riêng lẻ thành một tệp .gif cuối cùng bằng tiện ích imagemagick. Để thực hiện việc này, hãy mở một đầu cuối trên đích và chèn lệnh sau:
Mã:
convert -delay 25 -loop 0 *.gif example.gif


Bạn có thể đặt tên cho tệp kết quả theo ý muốn (tôi đã sử dụng “example.gif”) và bạn có thể thay đổi cài đặt độ trễ và vòng lặp nếu cần. Sau đây là tệp kết quả của hướng dẫn nhanh này:
 
Back
Bên trên