Apa perintah terminal untuk mengambil tangkapan layar?

116

Perintah apa yang dapat saya gunakan di terminal yang setara dengan tombol PrtSc(Layar Cetak)?

Saya menjalankan Ubuntu GNOME.

devav2
sumber
Apakah Anda menggunakan gnome atau KDE atau yang lainnya? Ini tergantung pada lingkungan desktop apa yang Anda gunakan.
Braiam
@Braiam lihat jawabannya .
Avinash Raj
@AvinashRaj apakah Anda sadar bahwa Unity juga menggunakan screenshot gnome?
Braiam
1
saya pikir gnome-screenshotadalah alat default pada kesatuan untuk mengambil screenshot.
Avinash Raj
1
Kemungkinan duplikat Alat tangkapan layar apa yang tersedia?
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

Jawaban:

104

Anda dapat menggunakan alat impor yang tersedia dalam paket ImageMagick (Anda harus menginstal ini jika sudah tidak tersedia di sistem Anda).

Jalankan perintah berikut dalam shell:

import screenshot.png

dan pilih jendela yang ingin Anda tangkap atau pilih wilayah dengan menekan tombol kiri mouse dan menarik.

impor sebenarnya adalah perintah yang sangat kuat yang dapat digunakan dalam banyak cara untuk menangkap layar. Misalnya, untuk menangkap seluruh layar dan setelah beberapa penundaan dan mengubah ukurannya, gunakan perintah berikut:

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

Untuk melihat semua opsi yang tersedia dengan perintah impor, buka situs web ImageMagick .

Cara lain untuk mengambil tangkapan layar dari terminal adalah dengan scrot

Untuk menginstal jenis scrot :

sudo apt-get install scrot

Untuk mengambil tangkapan layar di Linux dari terminal dengan jenis scrot:

scrot MyScreenshot.png

Beberapa opsi lainnya scrotada di sini:

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

Dalam contoh ini,

  • -b menentukan termasuk batas jendela
  • -d menetapkan penundaan lima detik
  • '% Y:% m:% d:% H:% M:% S.png' akan menyimpan tangkapan layar dengan nama berdasarkan tanggal dan waktu saat ini dan dengan format yang ditentukan, .pngdalam hal ini
  • -e 'mv $f ~/Desktop/' memberitahu scrot untuk menyimpan tangkapan layar ke Desktop
pengguna61928
sumber
Kedua jawaban tersebut tampaknya hanya bekerja dengan $ DISPLAY saat ini, oleh karena itu tidak bekerja pada SSH
That Brazilian Guy
Ini tentu bekerja untuk banyak pengguna, itu tidak berhasil untuk saya. ImageMagick import membuat Efek Desktop KDE transparan pada batas jendela / efek cahaya dalam warna hitam pekat. Dan sama scrotsekali tidak ingin berpartisipasi dalam pipa, yang saya gunakan untuk menghindari file perantara yang tidak perlu saat memotong layar yang diinginkan dari pengaturan Xinerama. Saya menggunakan xwdgantinya dan menggunakan ImageMagick convert untuk mengonversi format- xwd ke PNG dan melakukan pemotongan. (Lihat juga jawaban saya di bawah ini)
Christian Hujer
55

Temukan opsi ini di sini dan opsi lainnya juga tercantum.

Buka terminal dengan menekan Ctrl+ Alt+ Tdan ketik

gnome-screenshot

gunakan gnome-tangkapan layar -d xx untuk menunda tindakan.

Untuk menunda tindakan tangkapan layar sebanyak 10 detik

gnome-screenshot -d 10

atau

sleep 10;gnome-screenshot
devav2
sumber
4
gnome-screenshot --helpakan memberi Anda banyak pilihan.
sekitar
2
gnome-screenshot --interactive
Luis Souza
13

Anda dapat menggunakan program rana untuk mengambil tangkapan layar dari terminal. Jalankan perintah di bawah ini di terminal untuk menginstal rana,

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

Untuk mengambil tangkapan layar dari jendela yang aktif,

shutter -a -o shot.png -e

Untuk mengambil tangkapan layar dari seluruh tampilan,

shutter -f -o shot.png -e

Tangkapan layar yang diambil disimpan di direktori home .

Untuk opsi lainnya jalankan shutter --helpperintah,

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.
Avinash Raj
sumber
2
Shutter adalah alat yang sangat canggih yang memiliki bidikan pengeditan seperti GIMP dan dengan mudah menambahkan bentuk kenaikan otomatis yang sangat berguna untuk tutorial.
guneysus
8

Saya mencoba menggunakan ImageMagick import tetapi tidak berhasil bagi saya ketika menggunakan Efek Desktop KDE. ImageMagick import memiliki output batas jendela transparan dalam warna hitam alih-alih menggabungkan aleg latar depan dan latar belakang dengan benar.

Saya juga mencoba menggunakan X11 xwd dan NetPBM xwdtopnm tetapi itu juga tidak berhasil bagi saya, NetPBM xwdtopnm tidak dapat menangani output multiscreen dengan benar xwdkarena saya memiliki pengaturan Xinerama.

Tetapi menggabungkan X11 xwd dengan ImageMagick convert bekerja dengan baik untuk saya:

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

Atau, jika Anda memiliki pengaturan Dual-FullHD Xinerama, seperti saya, dan hanya ingin layar pertama:

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

Untuk layar kedua saja:

xwd -silent -root | convert xwd:- -crop 1920x1080+1920+0 +repage test.png
Christian Hujer
sumber
Jawaban bagus. Tapi karena Anda membaca dari pipa Anda mungkin perlu untuk menentukan format masukan untuk perintah convert: xwd ... | convert xwd:- .... Setidaknya itu diperlukan pada instal Debian Strech saya dengan IM 6.9.6-2
Sylvain Leroux
7

Jika Anda ingin mengambil tangkapan layar dari terminal masuk (yang Anda buka dengan Ctrl+ Alt+ F1), Anda dapat menggunakan program ini fbgrab.

Anda dapat menginstalnya dengan mengetik sudo apt-get install fbcat.

Kemudian ambil tangkapan layar dari terminal masuk Anda, ketikkan terminal masuk Anda:

$ sudo fbgrab my_screenshot

my_screenshot disimpan di bawah direktori saat ini.

pengguna2376000
sumber
2
Apa formatnya my_screenshot? Bagaimana cara melihatnya?
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
Meskipun ada banyak cara untuk membuat tangkapan layar di GUI, ini sebenarnya bekerja di konsol biasa tanpa X atau GUI. Format tangkapan layar adalah PNG.
mivk
4

Saya menggunakan ubuntu 13.10 dan saya punya skrip yang baru saja saya tulis yang mungkin bisa membantu. Saya melihat pertanyaan ini telah dijawab tetapi solusi saya tidak memerlukan instalasi tambahan.

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

Kode ini akan menyimpan tangkapan layar tanpa membuka jendela dialog. Ini menggunakan waktu saat ini untuk nama file untuk menghindari masalah nama file duplikat.

Gary Hutchinson
sumber