Donnerstag, 19. November 2009

[Software] - 016 - Automator

Mit dem Automator, der bei Mac OS X dabei ist, kann man einige tolle Sachen automatisieren. Seit der Version 10.6 (Snow Leopard) ist auch die Möglichkeit vorhanden, Dienste zu erstellen. Diese kann man wunderbar nutzen, um zum Beispiel, Bilder zu skalieren, Dateien zu verschieben oder diese umzubenennen.

In dem Video, habe ich mir mal Gedanken gemacht, wie man am einfachsten einen eigenes TinyGrap Programm bauen kann. Also ein Programm, was mir ein Bildschirmfoto macht, dieses ins Web schickt und mir eine Kurz-Url in die Zwischenablage legt, damit ich diese dann im Messanger weitergeben kann. Wie man im Video sieht, ist es keine große Sache, aber ich möchte doch noch mal die beiden Skripte erklären, die ich für den Upload nach funpic.de und für tinyurl.com genutzt habe.

Das erste Skript dient für den Upload (DAS FTP KONTO IST SCHON GELÖSCHT!!!)
1. d=$(date +%Y%m%d_%H%M%S).png
2. url="ftp -u ftp://schickmirmal:purz3lbaum@schickmirmal.sc.funpic.de/uploadpics/$d $1"
3. $url
4. rm -f $1
5. echo "http://schickmirmal.sc.funpic.de/uploadpics/$d"
1. hier baue ich mir einen neuen Dateinamen (z.B. 20091119_091502), also Jahr,Monat,Tag_Stunde,Minute,Sekunde und hänge dann als Dateiendung ein ".png" dran. Das mache ich, damit man eine übersichtliche Struktur hat und es keine doppelten Bilder gibt.
2. das ist der wichtigste Befehl im Skript, er bewirkt den Upload der Bilddatei, der Pfad ist in der Variablen $1 gespeichert. Also "ftp" ist klar, "-u" bedeutet upload, gefolgt von dem Verbindungsstring und der Datei die hoch geladen werden soll.
ftp://schickmirmal:purz3lbaum@schickmirmal.sc.funpic.de/uploadpics/$d $1
Protokoll Benutzername
Passwort FTP-Server Zielspeicherort Upload-Datei
3. hier lasse ich lediglich den Befehl, den ich unter Punkt 2 in eine Variablen gepeichert habe, ausführen.
4. wie erwähnt, in der Variablen $1, liegt der Pfad zu dem Bild auf dem Mac, das brauche ich nun nicht mehr, daher wird es gelöscht
5. Da gebe ich jetzt die komplette URL zu dem Bild, welches ich hochgeladen habe, aus. Das braucht dann das nächste Skript, um die Kurz-URL zu erzeugen.
Das zweite Skript, baut uns die Kurz-URL und nutzt dazu den Dienst von TinyURL.com

1. url=$1
2. web="curl http://tinyurl.com/create.php?url=$url"
3. src=`$web`
4. k=$(echo "$src" | sed -n -e "/copy('/p")
5. m=${k#*(\'}
6. n=${m%\')*}
7. j=${n%\')*}
8. echo "$j"
1. Speicher die übergebene URL in der Variablen url
2. hier nutze ich das Programm curl, welches standardmäßig auf meinem Mac installiert war, und rufe die tinyurl.com Seite "create.php" auf, als Parameter übergebe ich unsere Bild-URL. Diesen Befehl speichere ich in der Variablen web
3. ausführen des Befehls aus der Variablen web und das Ergebnis (hier html Quelltext) in der Varablen src speichern.
4. mittels dem sed Befehl, lasse ich mir die Zeile ausgeben, in der "copy('" vorkommt, die gibt es nur einmal, und speichere diese in der Variablen k ab.
5. hier wird alles von vorne abgeschnitten, bis einschließlich "copy('"
6. + 7. keine Ahnung warum, aber diesen Befehl muss ich 2x ausführen, er schneidet den hinteren Teil ab.
8. Ausgabe unserer Kurz-Url, die im nächsten Schritt dann in die Zwischenablage kopiert wird.

Keine Kommentare:

Kommentar veröffentlichen