Comment puis-je changer le nom par défaut des captures d'écran réalisées par gnome-screenshot?

34

Gnome-screenshot 3.1.2 utilise des noms de fichiers comme celui-ci

Capture d'écran au 31-07-2011 12: 13: 04.png

ce qui rend assez facile de voir quand il a été pris.

Le problème est qu’il utilise le caractère deux-points (:), ce qui rend impossible l’accès à une telle image à partir de Windows.

Considérant que je prends la plupart de mes captures d'écran pour pouvoir les envoyer aux utilisateurs de Windows, cela a posé quelques problèmes.

Est-il possible de changer le nom par défaut utilisé par l'outil de capture d'écran pour remplacer le ":" par "." ou "," ?

Chriskin
la source

Réponses:

12

Il n’est pas réellement possible de le changer facilement, vous pouvez peut-être nous aider avec ce rapport de bogue .

(pour les curieux, vérifiez le code source . Actuellement, la ligne pertinente est 134 )

Mise à jour : le bogue a été corrigé en amont le 2015-01-28 , remplaçant les deux-points par des tirets, ce qui aide. Mais ils n'ont pas pris l'espace malheureusement.

fain182
la source
3
+1 pour la liaison au code source. Maintenant, c’est la méthode linux. (Bien que le code du nom de fichier soit en fait ici, maintenant: git.gnome.org/browse/gnome-utils/tree/gnome-screenshot/… )
Mark E. Haase
1
Malheureusement, le lien est mort: aucun référentiel trouvé
gertvdijk
2
Nouvelle URL: git.gnome.org/browse/gnome-screenshot/tree/src/… (consulté le 2013-02-16 18:08 UTC + 0800)
LiuYan le 16 Février 2013
J'aimerais que nous puissions régler cela localement avant que de bons vieux développeurs GNOME ne se réveillent un peu plus rapidement face à des problèmes aussi importants signalés par les utilisateurs ;-)
Sadi
3
Qui a pensé que c'était une bonne idée de coder en dur les noms de capture d'écran en C, nécessitant une recompilation de tout l'environnement de bureau? Personne n'avait-il jamais pensé qu'un utilisateur pourrait vouloir changer le nom par défaut? Maintenant qu’il existe dconf-editor, et gnome-screenshotqu’il l’utilise, pourquoi ne pas avoir une entrée dconf stting pour "stratégie de nommage de capture d’écran" que vous pouvez définir Screenshot-%02d.png, et si vide, suivez la stratégie de nommage codé en dur? Eh ....
Sdaau
10

Il existe un moyen simple et sale de renommer toute la capture d'écran prise immédiatement après la création, mais vous devrez installer inotify-tools ( apt-get install inotify-tools) pour pouvoir ensuite exécuter cette commande:

while true; do inotifywait -e CREATE ~/Pictures && rename 's/\:/\./g' Pictures/Screenshot*.png; done;

Lorsque cette commande sera exécutée, chaque fois que vous enregistrez une nouvelle capture d’écran dans Images /, le script renomme chaque fichier contenant le fichier en le :remplaçant :par.

(Peut-être que vous voulez changer le répertoire, je ne sais pas quel répertoire utilise Gnome 3) Si vous l'aimez vraiment, vous pouvez lancer cette commande dans un script à chaque démarrage de gnome.

fain182
la source
3
+1 C'est une petite astuce, mais votre expression rationnelle devrait être 's /\:/\./ g'
Mark E. Haase
une autre option de remplacement: utilisez le caractère unicode
LiuYan 研 研
Notez que les captures d'écran sont enregistrées par défaut dans ~/Pictures, pas ~/Desktop.
MestreLion
9

Au lieu d'installer des logiciels supplémentaires et d'écrire ce code dans l'outil de capture d'écran, voici une solution de contournement pour renommer les fichiers par la suite.

Tout ce que vous avez à faire est de naviguer dans le répertoire et d’exécuter la commande suivante

rename 's/\:/\-/g' *.png

Cela remplacera tous les deux points par des tirets dans tous les noms de fichiers se terminant par .pngceux présents dans le répertoire en cours.

mrinterested
la source
Solution de contournement moins optimale, mais beaucoup plus facile que celle proposée par fain182 . +1
jeudi
6

gnome-screenshotn'autorise pas la définition d'une valeur par défaut globale pour les noms de fichiers de captures d'écran, mais vous pouvez utiliser l' -foption pour spécifier un nom de fichier sur la ligne de commande.

Nous pouvons l'utiliser pour écrire un petit script bash qui remplacera le gnome-screenshotbinaire d' origine et exécutera l'original avec le paramètre de nom de fichier correct.

Notez que vous devez disposer des privilèges root pour les opérations suivantes. Vous devez donc préfixer chaque commande avec sudoou ouvrir un shell root avec sudo -i.

  1. Déplacez le gnome-screenshotbinaire original pour qu'il ne gêne pas:

    dpkg-divert --add --rename --divert /usr/bin/gnome-screenshot.real /usr/bin/gnome-screenshot
  2. Ouvrir /usr/bin/gnome-screenshotdans un éditeur (vous devriez voir un nouveau fichier vide):

    editor /usr/bin/gnome-screenshot
  3. Collez les deux lignes suivantes dans l'éditeur:

    #!/bin/bash  
    gnome-screenshot.real -f "$HOME/Pictures/Screenshots/$(date +%F_%H-%M-%S).png" $@

    Vous pouvez insérer n'importe quel chemin après le -f; assurez-vous simplement de le mettre entre guillemets et de le conserver $@après.
    Dans cet exemple, les captures d'écran seront stockées avec des noms de fichiers tels que /home/yourusername/Pictures/Screenshots/2011-07-31_12-13-04.png. Voir man datepour plus de détails sur la date +%…syntaxe.

  4. Enregistrez le fichier et fermez l'éditeur (par exemple, utilisez Ctrl+ Xdans Nano ou :wqdans Vim).

  5. Rendre le script nouvellement créé exécutable:

    chmod a+x /usr/bin/gnome-screenshot
n.
la source
4

Shutter est une autre application de prise de vue qui vous permet de personnaliser le nom du fichier: vous pouvez l’installer à partir du Centre logiciel Ubuntu.

Marco Lackovic
la source
1
L'obturateur est incroyable en soi, et c'est à mon sens la meilleure approche: au lieu de corriger les noms de fichiers incorrects, ne les produisez pas!
MestreLion
Par exemple, le nom du fichier dans le volet peut avoir le caractère générique suivant: $nb_name_%Y-%m-%d-%H%M%S. Vous pouvez le définir dans les préférences.
Vladimir S.
1

Si:

  1. vous connaissez les outils d'édition binaire tels que bless(voir le paquet ubuntu par exemple ou github ),
  2. et vous connaissez les modificateurs de format de chaîne C,
  3. et vous savez la différence entre 0x0et "0",
  4. et ne vous dérange pas de jouer avec les fichiers binaires installés par la distribution de votre choix Linux,

alors vous pouvez modifier le nom de fichier utilisé par gnome-screenshot.

Lors de l'édition binaire gnome-screenshot, vous trouverez deux chaînes de format:

  1. %Y-%m-%d %H-%M-%S suivi d'un octet nul,
  2. et Screenshot from %s.%ssuivi d'un octet nul.

Dans la deuxième chaîne de format, le premier %sest la date, le second %sest l'extension du fichier.

De là, vous pouvez, par exemple, remplacer %Y-%m-%d %H-%M-%S avec %F-%H%M%Ssuivi d'un octet nul et Screenshot from %s.%spar shot %s.%ssuivi d'un octet nul: les captures d' écran seront alors nommés "shot 2018-05-05_174857.png"par exemple.

Adaptez-vous à vos préférences.

Il y a deux contraintes:

  1. le nouveau format de date et le nouveau format de nom de fichier ne doivent pas être plus longs que les originaux,
  2. vos personnalisations seront détruites si vous installez une nouvelle version de gnome-screenshot, par exemple lors de la mise à jour de votre système.

Avertissements:

  • Testé sur Ubuntu 16.04 LTS, votre kilométrage peut varier.
  • Ceci est un hack , pas une façon propre de modifier le nom par défaut généré par gnome-screenshot: faites une sauvegarde avant de continuer.
  • Publié sans aucune garantie d'aucune sorte.
EKP
la source
0

Dans Debian 8.6 KDE → Paramètres système → Raccourcis personnalisés, j'ai défini le déclencheur → PrtScn et Action →

gnome-screenshot -p -f "$(date +%F_%H-%M-%S)_D.png"

et ça marche bien.

Flavio R. Cavalcanti
la source
Je me demande quelle version de Debian a été récente il y a cinq ans.
mook765