Wie kann ich den Standardnamen für die von gnome-screenshot erstellten Screenshots ändern?


34

Gnome-screenshot 3.1.2 verwendet Dateinamen wie diesen

Screenshot vom 31.07.2011 12: 13: 04.png

So ist es ziemlich einfach zu sehen, wann es aufgenommen wurde.

Das Problem ist, dass der Doppelpunkt (:) verwendet wird, wodurch der Zugriff auf ein solches Abbild unter Windows nicht möglich ist.

Wenn ich bedenke, dass ich die meisten meiner Screenshots mache, damit ich sie an Windows-Benutzer senden kann, hat dies einige Probleme verursacht.

Gibt es eine Möglichkeit, den vom Screenshot-Tool verwendeten Standardnamen zu ändern, um ":" durch "." Zu ersetzen? oder "," ?

Antworten:


12

Es ist nicht möglich, es einfach zu ändern. Vielleicht können Sie mit diesem Fehlerbericht helfen .

(Für die Neugierigen, überprüfen Sie den Quellcode . Derzeit ist die relevante Zeile 134 )

Update : Der Fehler wurde am 28.01.2015 behoben. Doppelpunkte wurden durch Bindestriche ersetzt, was hilft. Den Platz haben sie sich aber leider nicht genommen.


3
+1 für die Verknüpfung mit dem Quellcode. Nun, das ist der Linux-Weg. (Obwohl der Dateinamencode tatsächlich hier ist: git.gnome.org/browse/gnome-utils/tree/gnome-screenshot/… )
— Mark E. Haase

1
Leider ist der Link tot: Keine Repositories gefunden
— gertvdijk

2
Neue URL: git.gnome.org/browse/gnome-screenshot/tree/src/… (abgerufen am 2013-02-16 18:08 UTC + 0800)
— LiuYan 刘 研

Ich wünschte, wir könnten dies lokal optimieren, bevor gute alte GNOME-Entwickler ein wenig schneller auf solche wichtigen Probleme
— Sadi

3
Wer hat es für eine gute Idee gehalten, Screenshot-Namen in C fest zu codieren und die gesamte Desktop-Umgebung neu zu kompilieren ? Hatte noch niemand gedacht, dass ein Benutzer die Standardbenennung ändern möchte? Nun, da es dconf-editorund solche gibt und sie gnome-screenshotverwendet, warum nicht einen dconf-Eintrag für "Screenshot-Benennungsrichtlinie" haben, den Sie festlegen könnten Screenshot-%02d.png, und wenn leer, dann mit der fest codierten Benennungsrichtlinie mitmachen? Eh ....
— Sdaau

10

Es gibt eine einfache und schmutzige Möglichkeit, alle Screenshots, die unmittelbar nach der Erstellung erstellt wurden, umzubenennen. Sie müssen jedoch inotify-tools ( apt-get install inotify-tools) installieren und dann den folgenden Befehl ausführen:

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

Während dieser Befehl ausgeführt wird, benennt das Skript jedes Mal, wenn Sie einen neuen Screenshot in Pictures / speichern, jede Datei um, die enthält :, und ersetzt diese :durch.

(Vielleicht möchten Sie das Verzeichnis ändern, ich weiß nicht, welches Verzeichnis Gnome 3 verwendet.) Wenn Sie es wirklich mögen, können Sie diesen Befehl bei jedem Start von gnome in einem Skript starten.


3
+1 Dies ist ein netter kleiner Trick, aber dein Regex sollte 's /\:/\./ g' sein
— Mark E. Haase

Eine weitere Möglichkeit der Ersetzung: Verwenden Sie das Unicode-Zeichen:
— LiuYan 刘 刘

Beachten Sie, dass Screenshots standardmäßig in ~/Picturesund nicht in gespeichert werden ~/Desktop.
— MestreLion

9

Anstatt zusätzliche Software zu installieren und diesen Code in das Screenshot-Tool zu schreiben, finden Sie hier eine Problemumgehung, um die Dateien anschließend umzubenennen.

Sie müssen lediglich zum Verzeichnis navigieren und den folgenden Befehl ausführen

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

Dadurch werden alle Doppelpunkte durch Bindestriche in allen Dateinamen .pngersetzt, die auf die im aktuellen Verzeichnis vorhandenen enden .


Weniger optimal, aber viel einfacher zu umgehen als von fain182 vorgeschlagen . +1
— gertvdijk

6

gnome-screenshotEs ist nicht möglich, einen globalen Standard für die Dateinamen der Screenshots -ffestzulegen. Sie können jedoch die Option verwenden, um einen Dateinamen in der Befehlszeile anzugeben.

Wir können das verwenden, um ein kleines Bash-Skript zu schreiben, das den Platz der ursprünglichen gnome-screenshotBinärdatei einnimmt und das Original mit dem richtigen Dateinamen-Parameter ausführt.

Beachten Sie, dass Sie für die folgenden Vorgänge über Root-Berechtigungen verfügen müssen. Stellen Sie daher jedem Befehl sudoein Präfix voran oder öffnen Sie eine Root-Shell mit sudo -i.

  1. Bewegen Sie die ursprüngliche gnome-screenshotBinärdatei aus dem Weg:

    dpkg-divert --add --rename --divert /usr/bin/gnome-screenshot.real /usr/bin/gnome-screenshot
  2. /usr/bin/gnome-screenshotIn einem Editor öffnen (es sollte eine neue leere Datei angezeigt werden):

    editor /usr/bin/gnome-screenshot
  3. Fügen Sie die folgenden zwei Zeilen in den Editor ein:

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

    Sie können nach dem -f; einen beliebigen Pfad einfügen . Stellen Sie einfach sicher, dass Sie es in Anführungszeichen setzen und das Nachher aufbewahren $@.
    In diesem Beispiel werden die Screenshots mit Dateinamen wie gespeichert /home/yourusername/Pictures/Screenshots/2011-07-31_12-13-04.png. Siehe man dateEinzelheiten zur date +%…Syntax.

  4. Speichern Sie die Datei und schließen Sie den Editor (z. B. mit Ctrl+ Xin Nano oder :wqin Vim).

  5. Machen Sie das neu erstellte Skript ausführbar:

    chmod a+x /usr/bin/gnome-screenshot

4

Shutter ist eine weitere Anwendung zum Aufnehmen von Screenshots, mit der Sie den Dateinamen anpassen können: Sie können ihn über das Ubuntu Software Center installieren.


1
Auslöser ist erstaunlich , von selbst, und das ist imho dies der beste Ansatz ist: statt Fixierung schlecht Dateinamen, erzeugt sie nicht!
— MestreLion

Zum Beispiel kann der Dateiname in den Shutter hat folgende Platzhalter: $nb_name_%Y-%m-%d-%H%M%S. Sie können es in den Einstellungen festlegen.
— Vladimir S.

1

Ob:

  1. Sie sind vertraut mit binären Bearbeitungswerkzeugen wie bless(siehe Ubuntu-Paket zum Beispiel oder Github ),
  2. und Sie kennen C-String-Format-Modifikatoren,
  3. und Sie kennen den Unterschied zwischen 0x0und "0",
  4. und es macht Ihnen nichts aus, mit Binärdateien herumzuspielen, die von der Linux-Distribution Ihrer Wahl installiert wurden,

Dann können Sie den von verwendeten Dateinamen ändern gnome-screenshot.

Bei der binären Bearbeitung gnome-screenshotfinden Sie zwei Formatzeichenfolgen:

  1. %Y-%m-%d %H-%M-%S gefolgt von einem Null-Byte,
  2. und Screenshot from %s.%sgefolgt von einem Null-Byte.

In der zweiten Formatzeichenfolge ist die erste %sdas Datum und die zweite %sdie Dateierweiterung.

Von hier aus können Sie zum Beispiel überschreiben %Y-%m-%d %H-%M-%S mit %F-%H%M%Svon einem Null - Byte gefolgt und Screenshot from %s.%sdurch shot %s.%sdurch einen Null - Byte: Screenshots wird dann genannt werden , "shot 2018-05-05_174857.png"zum Beispiel.

Passen Sie sich Ihren Vorlieben an.

Es gibt zwei Einschränkungen:

  1. das neue Datumsformat und das neue Dateinamenformat dürfen nicht länger sein als die ursprünglichen,
  2. Ihre Anpassungen werden zerstört, wenn Sie eine neue Version von installieren gnome-screenshot, z. B. beim Aktualisieren Ihres Systems.

Warnungen:

  • Getestet auf Ubuntu 16.04 LTS, kann Ihr Kilometerstand variieren.
  • Dies ist ein Hack und keine saubere Methode, um den Standardnamen zu ändern, der durch Folgendes generiert wurde gnome-screenshot: Erstellen Sie eine Sicherungskopie, bevor Sie fortfahren.
  • Wird ohne Gewährleistung jeglicher Art verschickt.

0

In Debian 8.6 KDE → Systemeinstellungen → Benutzerdefinierte Verknüpfungen habe ich Auslöser → PrtScn und Aktion → eingestellt

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

und es funktioniert gut.


Ich frage mich, welche Debian-Version vor fünf Jahren erschienen ist.
— Mook765
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.