Ändern des standardmäßigen Screenshot-Dateinamens

Gibt es eine Möglichkeit, das Standard-Präfix für Screenshot-Dateinamen (den Cmd-Shift-4Typ Screenshot) in etwas anderes als den Standard zu ändern? Der Standardname sieht so aus:

Screen Shot 2011-08-30 at 10.01.36 AM.png

Aber ich würde lieber etwas verwenden wie:

screenshot_2011-08-30_100136.png

Grundsätzlich kann ich also die Leerzeichen und den Müll entfernen, da es lästig ist, Dateien im Terminal zu durchsuchen. Gibt es eine einfache Möglichkeit, dieses Präfix mit einem der Stilbefehle zu ändern defaults write com.apple.screencapture?

Besteht die Möglichkeit, dass wir Sie dazu bringen können, eine Antwort auszuwählen, die für Sie funktioniert? (oder eine Bearbeitung, um besser zu wissen, was Sie suchen?)
Ähnliche Informationen: superuser.com/q/339702/247728

Antworten (8)

Mit den folgenden Befehlen können Sie „Screenshot“ in „Screenshot“ ändern

defaults write com.apple.screencapture name screenshot
killall SystemUIServer

Wenn Sie in Terminal etwas tiefer graben möchten, können Sie das erreichen, was Sie wollen, indem Sie Folgendes tun:

HINWEIS: Erstellen Sie eine Sicherungskopie aller Dateien, die Sie ändern, falls Sie einen Fehler machen.

  1. cd /System/Library/CoreServices/SystemUIServer.app/Contents/Resources/English.lproj
  2. Erstellen Sie eine Kopie der vorhandenen Datei:
    sudo cp ScreenCapture.strings ScreenCapture.strings.old
  3. Geben Sie das Admin-Passwort ein, wenn Sie dazu aufgefordert werden
  4. In ein bearbeitbares Format konvertieren:
    sudo plutil -convert xml1 ScreenCapture.strings
  5. sudo vi ScreenCapture.strings

    Suchen Sie die folgenden Zeilen:

    <key>%@ %@ at %@</key>  
    <string>%@ %@ at %@</string>  
    

    und durch folgende Zeilen ersetzen:

    <key>%@ %@ at %@</key>  
    <string>%@_%@_%@</string>  
    
  6. Rückwandlung in binär:
    sudo plutil -convert binary1 ScreenCapture.strings
  7. killall SystemUIServer

was in Kombination mit der ersten Änderung so etwas bringen sollte:

screenshot_2011-08-30_10.01.36.pngdas ist sehr nah an dem, was Sie brauchen, denke ich

Dies scheint in OS X El Capitan nicht zu funktionieren, vermutlich aufgrund des Systemintegritätsschutzes.

Ich habe das anders gelöst. Mit Automator richte ich eine Ordneraktion ein, um meinen Screenshot-Ordner zu überwachen und alle neuen Dateien genau so umzubenennen, wie ich sie möchte.

Hier gibt es eine anständige Anleitung mit einem ähnlichen Ansatz und Anweisungen.

Wie hoch ist die Latenz beim Automator-Ansatz? Wie viel Zeit vergeht zwischen dem Speichern der ursprünglichen Bildschirmabdeckung und der Verfügbarkeit der Datei mit dem neuen Dateinamen? Ist es 1 Sekunde, 3 Sekunden, 12 Sekunden?
Zwischen 5 und 7 Sekunden vom Screenshot bis zur Änderung des Dateinamens (auf meinem MacBook Pro von 2009).
Vielen Dank! Angesichts dessen werde ich einen Bash-Code schreiben, um dies zu tun.

Ich habe die Standardverknüpfungen deaktiviert und diesem Befehl eine Verknüpfung zugewiesen :

screencapture -i ~/Desktop/$(date +%Y%m%d%H%M%S).png

-i (interaktiv) ist wie ⇧⌘4 oder ⌃⇧⌘4.

Das scheint die direkteste Lösung des Problems zu sein. Aber wie ordnet man einem Befehl eine Verknüpfung zu? Im Dialogfeld Systemeinstellungen heißt es: "Geben Sie den genauen Namen des MENÜBEFEHLS ein, den Sie hinzufügen möchten." Ihr Befehl ist kein Menübefehl, also ...?
@Cheeso Siehe den Link in der Antwort. Sie können eine Anwendung wie FastScripts oder Alfred verwenden oder einen Dienst mit Automator erstellen.

Terminal öffnen und eingeben:

$ sudo su

$ cd /System/Library/CoreServices/SystemUIServer.app/Contents/Resources/English.lproj

$ plutil -convert xml1 ScreenCapture.strings

$ nano ScreenCapture.strings

Rückgeld

<key>%@ %@ at %@</key>
    <string>%@ %@ at %@</string>
<key>.</key>
    <string>.</string>
<key>Screen Shot</key>
    <string>Screen Shot</string>

zu

<key>%@ %@ at %@</key>
    <string>%@_%@_%@</string>
<key>.</key>
    <string></string>
<key>Screen Shot</key>
    <string>screenshot</string>

dann

Control+ O zum Schreiben der Datei und Control+ X zum Beenden von nano

$ plutil -convert binary1 ScreenCapture.strings

$ killall SystemUIServer

Eine weitere Sache, die Sie hier beachten sollten, ist, dass Sie sie in Systemeinstellungen > Sprache & Text > Formate (24-Stunden-Format) ändern müssen, um AM/PM loszuwerden. Zeitstempel werden je nach Einstellung angezeigt; Denken Sie daran, dass alle Dateinamen dieses Format verwenden, wenn Sie diese Einstellung ändern.

~ Lassen Sie mich wissen, wie es funktioniert.

Der gleiche Effekt der oben gezeigten komplizierten Terminalaktionen kann durch das Einstellungsfenster für kostenlose Geheimnisse erzielt werden , das als Schnittstelle für alle möglichen versteckten Einstellungen in Mac OS und seinen Apps dient. Öffnen Sie einfach das Voreinstellungsfenster und suchen Sie die Einstellung, die Sie ändern möchten

IMO sollten Sie absolut nicht mit irgendetwas in /System/ herumspielen.

Zum einen bitten Sie nur darum, dass Ihre Anpassungen durch ein zukünftiges Update überschrieben werden.

Laden Sie die Demo von Sharpshooter von http://www.kerlmax.com/products/sharpshooter/ herunter.

Sie können es 30 Tage lang verwenden. Dann kaufen Sie es für 15 $. Es ist ein großartiges Dienstprogramm.

Alternativ hast du es mit Skitch versucht ? Es ist völlig kostenlos und viel besser als das integrierte.

Die Antwort von Adrian B hat mir gefallen . Hier ist das Shell-Skript, das ich geschrieben habe, um Screencap-Dateien umzubenennen: https://gist.github.com/DinoChiesa/7796444

Um es als Ordneraktion einzurichten, folgen Sie diesem Artikel .

Wenn Sie zum Automator-Fenster gelangen, folgen Sie dieser Anleitung:

Geben Sie hier die Bildbeschreibung ein

Vergessen Sie nicht, es zu speichern (Befehl-S).

Nach meiner Erfahrung dauert es 3-6 Sekunden, bis diese Ordneraktion "startet", nachdem ich den Bildschirm aufgenommen habe.

Verwenden Sie einfach 2 Befehle:

d̶e̶f̶a̶u̶l̶t̶s̶ ̶w̶r̶i̶t̶e̶ ̶c̶o̶m̶.̶a̶p̶p̶l̶e̶.̶s̶c̶r̶e̶e̶n̶c̶a̶p̶t̶u̶r̶e̶ ̶n̶a̶m̶e̶ ̶"̶s̶c̶r̶e̶e̶n̶s̶h̶o̶t̶_̶$̶(̶d̶a̶t̶e̶ ̶+̶%̶Y̶_̶%̶m̶_̶%̶d̶-̶%̶H̶_̶%̶M̶_̶%̶S̶)̶"̶ ̶
d̶e̶f̶a̶u̶l̶t̶s̶ ̶w̶r̶i̶t̶e̶ ̶c̶o̶m̶.̶a̶p̶p̶l̶e̶.̶s̶c̶r̶e̶e̶n̶c̶a̶p̶t̶u̶r̶e̶ ̶"̶i̶n̶c̶l̶u̶d̶e̶-̶d̶a̶t̶e̶"̶ ̶0̶

Sie können auch den Standardspeicherort für Screenshots ändern (in meinem Fall ist dies ein Ordner in iCloud).

defaults write com.apple.screencapture location "~/Library/Mobile\ Documents/com\~apple\~CloudDocs/screenshots"
Dies funktionierte beim ersten Mal, aber jeder nachfolgende Screenshot wiederholte nur den Vornamen und hängte am Ende eine inkrementierte Nummer an.
@BrettVanderVeen ja, du hast recht, es ist keine Lösung