web-dev-qa-db-fra.com

Script Bash pour prendre une capture d'écran et enregistrer l'image - Ubuntu

J'ai écrit un script bash comme ci-dessous:

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

Je m'attendais à ce que ce script prenne une capture d'écran et enregistre l'image avec le nom de fichier indiqué sur mon bureau.

Problème: mon terminal Ubuntu génère une erreur:

import: commande introuvable

6
Prabhu Kl

Vous devez installer le paquet imagemagic pour pouvoir utiliser la commande import.

Sudo apt-get install imagemagick

Install via the software centerimagemagick Install imagemagick

Cela vous permettra d'utiliser la commande importname__. Essayez également le package graphicsmagick-imagemagick-compat .

autres alternatives à importer sont

  • scrotname__

    Pour installer scrot: Sudo aptitude install scrot

Install via the software centerscrot Install scrot

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

Sudo aptitude install gnome-screenshot

Install via the software centergnome-screenshot Install gnome-screenshot

9
devav2

Vous pouvez utiliser le meilleur outil de capture d'écran shutterInstall shutter pour une utilisation dans les scripts aussi! Et je crois que c'est l'outil le plus puissant et qu'il vous offre les options les plus avancées et les plus précises à utiliser dans les scripts.

Installez-le avec la commande dans un terminal

Sudo apt-get install shutter

ou en utilisant le centre de logiciel (en cliquant sur le gros bouton ci-dessous)

Install via the software center

Et après l’installation, utilisez cette commande pour prendre une capture d’écran de tout l’affichage et la sauvegarder dans un fichier nommé myshot.png

shutter -f -o myshot.png -e
  • Le -f indique au déclencheur de prendre une capture d'écran de tout l'affichage. Vous pouvez également utiliser -a pour prendre une capture d'écran de la fenêtre active ou lui demander de prendre une photo depuis une fenêtre spécifique.

  • L'option -o est utilisée pour indiquer à l'obturateur le nom du fichier de sortie. Vous pouvez spécifier n'importe quel nom de fichier

  • L'option e entraîne la fermeture de l'obturateur après la capture d'écran.


La sortie de shutter --help est donnée ci-dessous à titre de référence.

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
Anwar

Pour installer imagemagick, contenant le programme importname__, voir l’autre réponse. Cependant, vous pouvez également lancer gnome-screenshot à partir de la ligne de commande en appelant gnome-screenshot. L'applet prendra immédiatement la capture d'écran et affichera une boîte de dialogue permettant de saisir un nom de fichier:

enter image description here

2
January