Qual è il comando terminal per fare uno screenshot?


116

Quali comandi posso usare nel terminale che equivale al PrtScpulsante (Stampa schermo)?

Sto eseguendo Ubuntu GNOME.


Stai usando gnome o KDE o qualcos'altro? Dipende dall'ambiente desktop in uso.
Braiam,

@Braiam dai un'occhiata alla sua risposta .
Avinash Raj,

@AvinashRaj sai che Unity usa anche gnome-screenshot?
Braiam,

1
penso che gnome-screenshotsia lo strumento predefinito sull'unità per fare screenshot.
Avinash Raj,

Risposte:


104

Puoi usare lo strumento di importazione disponibile nel pacchetto ImageMagick (devi installarlo se non è già disponibile sul tuo sistema).

Esegui il seguente comando in una shell:

import screenshot.png

e seleziona la finestra che vuoi catturare o seleziona una regione premendo il tasto sinistro del mouse e trascinando.

import è in realtà un comando molto potente che può essere utilizzato in molti modi per catturare lo schermo. Ad esempio, per acquisire l'intero schermo e dopo alcuni ritardi e ridimensionarlo, utilizzare il comando seguente:

import -window root -resize 400x300 -delay 200 screenshot.png

Per visualizzare tutte le opzioni disponibili con il comando di importazione, visitare il sito Web ImageMagick .

Un altro modo per fare uno screenshot dal terminale è con scrot

Per installare il tipo di scrot :

sudo apt-get install scrot

Per acquisire uno screenshot in Linux dal terminale con tipo di scrot:

scrot MyScreenshot.png

Altre opzioni con scrotsono qui:

scrot -b -d 5 '%Y:%m:%d:%H:%M:%S.png' -e 'mv $f ~/Desktop/'

In questo esempio,

  • -b specifica inclusi i bordi della finestra
  • -d specifica un ritardo di cinque secondi
  • '% Y:% m:% d:% H:% M:% S.png' salverà lo screenshot con un nome basato sulla data e l'ora correnti e con il formato specificato, .pngin questo caso
  • -e 'mv $f ~/Desktop/' dice a scrot di salvare lo screenshot sul desktop

Entrambe le risposte sembrano funzionare solo con l'attuale $ DISPLAY, quindi non funzionano su SSH
Quel ragazzo brasiliano

Questo sicuramente funziona per molti utenti, non ha funzionato per me. ImageMagick import rende i bordi della finestra di KDE Effetti desktop trasparenti / effetto bagliore in nero pieno. E scrotnon voglio affatto partecipare alle pipe, che uso per evitare inutili file intermedi quando ritaglia lo schermo desiderato da una configurazione di Xinerama. Uso xwdinvece ImageMagick convert per convertire il formato xwd in PNG e fare il ritaglio. (Vedi anche la mia risposta di seguito)
Christian Hujer,

55

Questa opzione è stata trovata qui e sono elencate anche altre opzioni.

Aprire il terminale premendo Ctrl+ Alt+ Te digitare

gnome-screenshot

usa gnome-screenshot -d xx per ritardare l'azione.

Per ritardare l'azione dello screenshot di 10 secondi

gnome-screenshot -d 10

o

sleep 10;gnome-screenshot

4
gnome-screenshot --helpti darà molte opzioni.
qualcosa

2
gnome-screenshot --interactive
Luis Souza,

13

È possibile utilizzare il programma otturatore per acquisire screenshot dal terminale. Eseguire i comandi seguenti nel terminale per installare l'otturatore,

sudo add-apt-repository ppa:shutter/ppa
sudo apt-get update
sudo apt-get install shutter

Per fare uno screenshot della finestra attiva,

shutter -a -o shot.png -e

Per fare uno screenshot dell'intero display,

shutter -f -o shot.png -e

Le schermate acquisite sono archiviate nella home directory.

Per più opzioni esegui shutter --helpcomando,

Usage:
    shutter [options]

Options:
    Example 1
            shutter -a -p=myprofile --min_at_startup

    Example 2
            shutter -s=100,100,300,300 -e

    Example 3
            shutter --window=.*firefox.*

    Example 4
            shutter --web=http://shutter-project.org/ -e

  Capture Mode Options:
    -s, --select=[X,Y,WIDTH,HEIGHT]
            Capture an area of the screen. Providing X,Y,WIDTH,HEIGHT is
            optional.

    -f, --full
            Capture the entire screen.

    -w, --window=[NAME_PATTERN]
            Select a window to capture. Providing a NAME_PATTERN (Perl-style
            regex) ist optional.

    -a, --active
            Capture the current active window.

    --section
            Capture a section. You will be able to select any child window
            by moving the mouse over it.

    -m, --menu
            Capture a menu.

    -t, --tooltip
            Capture a tooltip.

    --web=[URL]
            Capture a webpage. Providing an URL ist optional.

    -r, --redo
            Redo last screenshot.

  Settings Options:
    -p, --profile=NAME
            Load a specific profile on startup.

    -o, --output=FILENAME
            Specify a filename to save the screenshot to (overwrites any
            profile-related setting).

            Supported image formats: You can save to any popular image
            format (e.g. jpeg, png, gif, bmp). Additionally it is possible
            to save to pdf, ps or svg.

            Please note: There are several wildcards available, like

             %Y = year
             %m = month
             %d = day
             %T = time
             $w = width
             $h = height
             $name = multi-purpose (e.g. window title)
             $nb_name = like $name but without blanks in resulting strings
             $profile = name of current profile
             $R = random char (e.g. $RRRR = ag4r)
             %NN = counter

            The string is interpretted by strftime. See "man strftime" for
            more examples.

            As an example: shutter -f -e -o './%y-%m-%d_$w_$h.png' would
            create a file named '11-10-28_1280_800.png' in the current
            directory.

  Application Options:
    -h, --help
            Prints a brief help message and exits.

    -v, --version
            Prints version information.

    -d, --debug
            Prints a lot of debugging information to STDOUT.

    --clear_cache
            Clears cache, e.g. installed plugins, at startup.

    --min_at_startup
            Starts Shutter minimized to tray.

    --disable_systray
            Disables systray icon.

    -e, --exit_after_capture
            Exit after the first capture has been made. This is useful when
            using Shutter in scripts.

2
Shutter è uno strumento molto avanzato che ha scatti di modifica come GIMP e che aggiunge facilmente forma di incremento automatico che è molto utile per le esercitazioni.
guneiso

8

Ho provato ad usare ImageMagick import ma non ha funzionato per me quando ho usato gli effetti desktop di KDE. ImageMagick import ha prodotto bordi di finestra trasparenti in nero anziché combinare correttamente alfa e sfondo in primo piano.

Ho anche provato a utilizzare X11 xwd e NetPBM xwdtopnm ma anche quello non ha funzionato per me, NetPBM xwdtopnm non ha potuto gestire correttamente l'output multischermo xwdperché ho una configurazione Xinerama.

Ma combinare X11 xwd con ImageMagick ha convert funzionato bene per me:

xwd -silent -root | convert xwd:- screenshot.png

Oppure, se hai una configurazione Xinerama Dual-FullHD, come me, e desideri solo la prima schermata:

xwd -silent -root | convert xwd:- -crop 1920x1080+0+0 test.png

Solo per la seconda schermata:

xwd -silent -root | convert xwd:- -crop 1920x1080+1920+0 +repage test.png

Bella risposta. Ma dal momento che si legge da tubo probabilmente è necessario specificare il formato di input per il comando di conversione: xwd ... | convert xwd:- .... Almeno era necessario sulla mia installazione di Debian Strech con IM 6.9.6-2
Sylvain Leroux,

7

Se vuoi fare uno screenshot da un terminale di accesso (quello che apri con Ctrl+ Alt+ F1) puoi usare il programma fbgrab.

Puoi installarlo digitando sudo apt-get install fbcat.

Quindi fai uno screenshot del tuo terminale di accesso, digita il tuo terminale di accesso:

$ sudo fbgrab my_screenshot

my_screenshot viene salvato nella directory corrente.


2
Qual è il formato di my_screenshot? Come visualizzarlo?
Ciro Santilli 11 改造 中心 法轮功 六四 事件

Sebbene ci siano molti modi per creare uno screenshot nella GUI, questo funziona in una console normale senza X o alcuna GUI. Il formato dello screenshot è PNG.
mivk

4

Sto usando Ubuntu 13.10 e ho uno script che ho appena scritto che potrebbe essere utile. Vedo la risposta a queste domande, ma la mia soluzione non richiede installazioni aggiuntive.

#!/bin/bash
curDate=$(date)
imgExtension=".png"
imgName=$curDate$imgExtension
imgDirectory="/path/to/desires/save/directory/"
imgSavePath=$imgDirectory$imgName
gnome-screenshot --file="$imgSavePath"

Questo codice salverà lo screenshot senza aprire la finestra di dialogo. Utilizza l'ora corrente per un nome file per evitare problemi con i nomi di file duplicati.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.