Λήψη στιγμιοτύπων από το Linux με import

Ανώνυμος (χωρίς επαλήθευση) | Κυρ, 01/13/2008 - 23:19 | 4' | 6

Συχνά θα θέλετε να πάρετε screenshots (στιγμιότυπα) από μια κονσόλα ή από όλο το περιβάλλον. Αυτό γίνεται με το πλήκτρο PrintScreen στο gnome ή με το KSnapshot στο KDE (ενώ και το Gimp προσφέρει τέτοια λειτουργία).

Τι γίνεται όμως αν τρέχετε ένα παιχνίδι που 'παίρνει' την οθόνη και το πληκτρολόγιο; Αν
το ίδιο το παιχνίδι δεν διαθέτει εσωτερική λειτουργία για λήψη στιγμιοτύπων, είναι δύσκολο να αποθηκεύσουμε σε ένα αρχείο ό,τι προβάλλει στην οθόνη. Ακόμα κι αν μπορούμε να το τρέξουμε σε παράθυρο, πρέπει πάλι να βρούμε ένα τρόπο να “πάρουμε” το πληκτρολόγιο από το παιχνίδι προκειμένου να χρησιμοποιήσουμε τα εργαλεία λήψης στιγμιοτύπων του Gnome ή του KDE.

Υπάρχει όμως μια τρίτη λύση. Το κόλπο είναι ότι ακόμα κι όταν δεν μπορούμε να πάμε πίσω στην επιφάνεια εργασίας, μπορούμε σχεδόν πάντα να πάμε σε ένα από τα virtual τερματικά
του Linux. Πατώντας Ctrl+Alt+F1 εμφανίζεται το πρώτο virtual τερματικό με το login του. Αυτά τα τερματικά έλκουν την καταγωγή τους από την εποχή του Unix με τα απλά τερματικά,
και το 'virtual' αναφέρεται στο γεγονός ότι πρόκειται για το τοπικό μηχάνημα και όχι για κάποιο απομακρυσμένο τερματικό.

Αλλάζοντας το F1 με F2-F6 πηγαίνουμε στα υπόλοιπα νοητά τερματικά ενώ το γραφικό περιβάλλον εμφανίζεται στο έβδομο (με Ctrl+Alt+F7), όπου τρέχει ο X.
Αφού λοιπόν συνδεθούμε σε ένα virtual τερματικό μπορούμε να πάρουμε ένα στιγμιότυπο με
ένα από τα εργαλεία του ImageMagick τα οποία υπάρχουν σε κάθε διανομή (ή εγκαταστήστε τα από το διαχειριστή πακέτων σας). Να η εντολή:

chvt 7; sleep 10;  import -display :0.0 -window root image.png 

Αυτή πηγαίνει στο 7ο τερματικό, περιμένει 10 δευτερόλεπτα και μετά τρέχει την εντολή
import η οποία αποθηκεύει όλα τα περιεχόμενα της οθόνης στο αρχείο image.png!

Η import είναι πανίσχυρη εντολή. Με τις παραμέτρους -resize και -delay μπορείτε ακόμα και να αλλάξετε το μέγεθος και να προσθέσετε μερικά ακόμα δευτερόλεπτα καθυστέρησης:

import -window root -resize 640×480 -delay 200 screenshot.png 

Αυτή θα περιμένει 200ms και μετά θα πάρει το στιγμιότυπο.

Φόρουμ
Δώσε αστέρια!

MO: (ψήφοι: 0)

Σχόλια

Πως παιρνω screenshot την ωρα της εγκαταστασης της διανομης!!!
Το μονο που σκεφτηκα ειναι απο το VMWare,αλλα δεν ειναι λυση αυτη.

PrintScreen;

Συνήθως οι διανομές δίνουν αυτή τη δυνατότητα, με κάποιο κουμπί. Διαφορετικά, μόνο VirtualBox (φτού κακά VMware).

Ναι,αλλα αν θελω να παρω πολλα screenshots δε θα θυμαται παντα το τελευταιο?καπου δε πρεπει να τα αποθηκευω πριν ξαναπατησω το printscreen?

"Κάποιες διανομές", π.χ. Debian, SUSE, προσφέρουν αυτή τη δυνατότητα και σου λένε που αποθηκεύουν τα στιγμιότυπα, τα οποία όμως πρέπει να θυμηθείς να αντιγράψεις στο /target (εκεί που έχει γίνει η εγκατάσταση) πριν τελειώσει η εγκατάσταση και κάνεις reboot ειδάλλως bye bye screenshots.

Προφανώς από τα Live installable CDs η διαδικασία είναι πολύ πιο εύκολη.

Για να γράψουμε σε βίντεο ότι βλέπουμε στην οθόνη πλύ καλό είναι το gtk-recordmydesktop. Θεωρητικά και το instabul κάνει το ίδιο. Πάντα μιλάμε για να καταγραψουμε μια σειρά ενεργείων. Δεν νομίζω ότι αποδίδουν για εγγραφή αντίστοιχη με αυτήν που πολύ ωραία περιγράφει ο Δημήτρης και μας διδάσκει ως συνήθως.

Καλύτερα το recordmydesktop. Στο Instabul ποτέ δεν κατάφερα να αποθηκεύσω ένα βίντεο της προκοπής. Αντίθετα το recordmy... φαίνεται πιο ελαφρύ.