Скрипт Bash, чтобы сделать скриншот и сохранить изображение - Ubuntu

Я написал скрипт bash, как показано ниже:

#!/bin/bash
echo "Enter a file name"
read filename
import -window root $HOME/Desktop/$filename.png

Я ожидал, что этот скрипт сделает снимок экрана и сохранит изображение с указанным именем файла на моем рабочем столе.

Проблема: Мой терминал Ubuntu выдает ошибку:

import: Команда не найдена

6
задан 18 October 2012 в 14:07

4 ответа

Чтобы установить imagemagick, содержащий программу import, см. Другой ответ. Тем не менее, вы также можете запустить gnome-screenshot из командной строки, вызвав gnome-screenshot. Апплет сделает снимок экрана без задержки и покажет диалоговое окно для ввода имени файла:

enter image description here

0
ответ дан 18 October 2012 в 14:07

Необходимо установить пакет imagemagic для использования команды импорта.

sudo apt-get install imagemagick

Install via the software center imagemagick Install imagemagick

Это позволит Вам использовать import команда. Также испытайте graphicsmagick-imagemagick-compat пакет.

другие альтернативы импорту

  • scrot

    Устанавливать scrot: sudo aptitude install scrot

Install via the software center scrot Install scrot

usage: `scrot screen.png`
  • gnome-screenshot

способность sudo устанавливает снимок экрана гнома

Install via the software center снимок экрана гнома Install gnome-screenshot

9
ответ дан 18 October 2012 в 14:07

Можно использовать лучший затворинструмент Install shutter снимка экрана для использования в сценариях также! И я верю, это - самый мощный инструмент, и дайте Вам самые усовершенствованные и подстроенные опции использовать в сценариях.

Установите его с командой в терминале

sudo apt-get install shutter

или использование центра программного обеспечения (путем нажатия большой кнопки ниже)

Install via the software center

И после установки, используйте эту команду, чтобы сделать снимок экрана целого дисплея и сохранить снимок экрана в названном файле, myshot.png

shutter -f -o myshot.png -e
  • -f говорит затвору делать снимок экрана целого дисплея. Вы могли также использовать -a сделать снимок экрана активного окна или сказать этому делать снимок из любого определенного окна.

  • -o опция используется для сообщения затвора имя выходного файла. Вы могли указать любое имя файла

  • e опция заставляет затвор выходить после делания снимка экрана.


Вывод shutter --help дан ниже для ссылки.

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.
5
ответ дан 18 October 2012 в 14:07

Мне нравится scrot для этого ( apt install scrot ):

 #!/bin/bash

 scrot -u -q 100 '/home/stephen/pic/screenshots/screenshot.%Y%m%d_%H%M%S.png'

И связан с некоторым ключом. Я столкнулся с проблемами при использовании ключа printscr и не позаботился о расследовании.

0
ответ дан 7 January 2020 в 15:44

Другие вопросы по тегам:

Похожие вопросы: