WinFuture-Forum.de: Scrennshotscript Mac OS - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Scrennshotscript Mac OS Variable für Datum gesucht


#1 Mitglied ist offline   Brutschi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 495
  • Beigetreten: 09. Oktober 04
  • Reputation: 4
  • Geschlecht:Männlich
  • Wohnort:Schönes Allgäu
  • Interessen:Computer, Seti@Home

  geschrieben 13. Juni 2013 - 17:58

Hallo Winfuturaner,

melde mich mal wieder mit einem kleinen Problem.
Und zwar bastle ich gerade an einem kleinen Script für automatische Screenshots unter Mac OS.
Beim Googlen habe ich schon ein Grundscript gefunden, dieses will ich aber noch anpassen, dass das Datum mit einfliesst.

for i in {1..9999};
do echo "taking screenshot $i"; screencapture -x wow$i.png;
sleep 60;
done


Ich habe mir gedacht dass das Ergebnis etwa so aussieht:

Zitat

wow0001-130613.png
wow0002-130613.png
........


Denke da lässt sich doch noch was machen, oder?

Gruss
Brutschi
Eingefügtes Bild
seit 09.09.2012 wieder richtige BOINC-STATS Signatur
0

Anzeige



#2 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.130
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 13. Juni 2013 - 18:10

screencapture -x "wow$i-$(date "+%d%m%y").png


Für andere Datumsformate, `man date` oder `man strftime`.
0

#3 Mitglied ist offline   Brutschi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 495
  • Beigetreten: 09. Oktober 04
  • Reputation: 4
  • Geschlecht:Männlich
  • Wohnort:Schönes Allgäu
  • Interessen:Computer, Seti@Home

geschrieben 16. Juni 2013 - 13:50

Hallo ph030,
habe es gerade probiert, aber es klappt nicht.
Ich erhalte eine Fehlermeldung

Zitat

date: illegal time format


Habe das Script ein bisschen verändert, hier nochmal das Script
for i in {1..2000};
do echo taking screenshot $i;
screencapture -x "wow$i-$(date "+%d%m%y").png;
sleep 60;
done



Es wären da noch zwei Punkte die ich brauche.
1. Die Dateien sollte mit führenden Nullen beginnen (siehe Beispiel im Eingangspost)
2. Wie kann man dieses Script abspeichern, das man eine Art Batch hat.

Gruss
Brutschi

Dieser Beitrag wurde von Brutschi bearbeitet: 16. Juni 2013 - 13:59

Eingefügtes Bild
seit 09.09.2012 wieder richtige BOINC-STATS Signatur
0

#4 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.130
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 16. Juni 2013 - 17:17

Ups, ja, sorry, falsch gequoted.

"wow-$i-$(date '+%y')"
So muß es heissen.

#!/bin/sh
for i in {1..2000}
do
 echo "Taking screenshot $i"
 screencapture -x "wow-$(printf '%04d' '$i')-$(date '+%d%m%y')"
 sleep 1m
done
(sollte in jeder SH-kompatiblen Shell funktionieren, klappt auf jeden Fall mit BASH und ZSH, gebe aber keine Garantie für die OSX-Varianten)

Obiges in den Editor der Wahl kopieren, speichern als 'foo' und dann `chmod +x /path/foo`.

Zu beachten, in dieser Variante erstellt das Script die Bilder immer in dem Ordner, aus dem es ausgeführt wird, solltest also ev. noch absolute Pfade einbauen.

Dieser Beitrag wurde von ph030 bearbeitet: 19. Juni 2013 - 16:43

1

#5 Mitglied ist offline   Brutschi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 495
  • Beigetreten: 09. Oktober 04
  • Reputation: 4
  • Geschlecht:Männlich
  • Wohnort:Schönes Allgäu
  • Interessen:Computer, Seti@Home

geschrieben 16. Juni 2013 - 19:48

Super es funktioniert Eingefügtes BildEingefügtes Bild
Habe grad einen Schnelltest gemacht, da hat es einwandfrei geklappt. Werde morgen noch genauere Tests und Feintuning betreiben.

Hier der Beweis
Angehängtes Bild: Bildschirmfoto 2013-06-16 um 20.41.03.png

Bei solchen speziellen Sachen ist WinFuture einfach unschlagbar!!
Danke ph030

Gruss
Brutschi
Eingefügtes Bild
seit 09.09.2012 wieder richtige BOINC-STATS Signatur
0

#6 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.130
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 16. Juni 2013 - 20:20

NP, viel Spaß damit.

BTW, wenn ich den Einsatzzweck ("wow") richtig deute, solltest du vielleicht statt ner for- eine while-Schleife nehmen und abbrechen bei Bedarf.

Einfacher wäre übrigens, wenn der Rechner stark genug ist, einfach als Video aufzuzeichnen und später die gewünschten Stellen als Bild zu extrahieren - z.B. mit ffmpeg.
0

#7 Mitglied ist offline   Brutschi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 495
  • Beigetreten: 09. Oktober 04
  • Reputation: 4
  • Geschlecht:Männlich
  • Wohnort:Schönes Allgäu
  • Interessen:Computer, Seti@Home

geschrieben 29. Mai 2016 - 15:40

So musste gerade das Originalscript wiederherstellen, hatte es gelöscht.
Ich hatte es damals doch noch zum laufen gebracht, obwohl hier noch ein Fehler drin war. Habe den Fehler korrigiert, und das Script um die Uhrzeit (HHMMSS) erweitert.

Höchste Zeit für einen Post mit dem Fehlerfreien Script, vielleicht hilft es ja jemand anderem noch.

Here is it.

for i in {1..2000};
do echo Taking Screenshot $i;
screencapture -x "wow-$(printf "%04d" $i)-$(date '+%d%m%y'_'%H%M%S')".png;
sleep 60;




Gruss
Brutschi


EDIT: Hatte doch noch einen Fehler im Script Eingefügtes Bild

Dieser Beitrag wurde von Brutschi bearbeitet: 29. Mai 2016 - 18:57

Eingefügtes Bild
seit 09.09.2012 wieder richtige BOINC-STATS Signatur
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0