Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
especiaria •->

Anmeldedatum: 24.04.2005 Beiträge: 5
|
Verfasst am: 24.04.2005 - 21:19 Titel: Fehler.. kann nicht in integer umgewandelt werden.. |
|
|
hallo zusammen,
bin heute das erste mal hier, habe mich schon durch viele hilfreiche beiträge durchgeangelt und für ein eigenes Script einiges zusammengetragen und umgeschrieben.
da gab´s auch schon echte Erfolgserlebnisse.
aber jetzt häng ich. vielleicht kann mir jemand weiterhelfen.
es erscheint immer folgende Fehlermeldung:
„alias "EOS350:DCIM:102CANON:_MG_0201.JPG"“ kann nicht in integer umgewandelt werden.
Sinn und Zweck meines Scripts soll es sein die digitalen Bilder meiner Kamera vom Speicher zu laden, das Änderungsdatum zu erfragen (Erstellungsdatum wird von der Kamera falsch ausgegeben), über das Änderungsdatum eine Ordnerstruktur auf meiner Festplatte aufzubauen (d.h. übergeordneter Ordner für Jahr, untergeordneter Ordner für Tag), die Dateien entsprechend umzukopieren und anschließend nach EOS_Nr-datum.jpg umzubenennen.
aber das Umbennen der Dateien funktioniert leider nicht.
hier das Script (habe den Quellordnerprüfungsteil weggelassen):
-- Dateien werden bearbeitet
on ProcessIt(theFile)
tell application "Finder"
set FileName to (name of theFile)
set NamensBeginn to "EOS_" as text
set modificationdate to modification date of theFile
set jahreszahl to ((year of modificationdate) as text) -- extrahiert das Jahr aus d
set jahr to text 3 thru 4 of jahreszahl -- extrahiert die letzten 2 ziffern aus Jahr aus jahreszahl
set monat to word 3 of ((current date) as text) -- extrahiert den Monat (als Monatsnamen) aus d
set MonatsListe to {January, February, March, April, May, June, July, August, September, October, November, December}
repeat with i from 1 to 12
if modificationdate's month = item i of MonatsListe then
set monat to text -2 thru -1 of ("0" & i)
exit repeat -- wenn true, wird die Schleife verlassen
end if
end repeat
-- Datumsformat für den Tag zuweisen (zweistelliger Zahlenwert)
set tag to (modificationdate)
if length of (day of (modificationdate) as string) is 1 then
set tag to "0" & (day of (modificationdate) as text)
else
set tag to (day of (modificationdate) as text)
end if
set datum to jahr & "-" & monat & "-" & tag
-- neue Ordner anlegen
set NeuerOrdner2005 to folder "dokumente pb:bibliothek:photos:datum:2005"
set NeuerOrdner2006 to folder "dokumente pb:bibliothek:photos:datum:2006"
set NeuerOrdner2007 to folder "dokumente pb:bibliothek:photos:datum:2007"
set NeuerOrdner2008 to folder "dokumente pb:bibliothek:photos:datum:2008"
if jahreszahl is "2005" then set NeuerOrdnerDatum to NeuerOrdner2005
if jahreszahl is "2006" then set NeuerOrdnerDatum to NeuerOrdner2006
if jahreszahl is "2007" then set NeuerOrdnerDatum to NeuerOrdner2007
if jahreszahl is "2008" then set NeuerOrdnerDatum to NeuerOrdner2008
try
set newFolder to (make new folder at NeuerOrdnerDatum with properties {name:datum})
set owner of newFolder to "myOwner"
set owner privileges of newFolder to read write
set group of newFolder to "myGroup"
set group privileges of newFolder to read write
set everyones privileges of newFolder to read write
end try
-- files bewegen
set NeuerOrt to (NeuerOrdnerDatum as text) & (datum)
move theFile to NeuerOrt
--neuer Name
set FileNameNeu to (NamensBeginn & "_" & (characters 5 through 8 of FileName) as text) & (datum as text) & characters 9 through end of FileName
set the name of the file theFile in NeuerOrt to FileNameNeu
end tell
end ProcessIt
_________________ pb 867 MHz, osx 10.3.9 |
|
Nach oben |
|
 |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 24.04.2005 - 21:34 Titel: |
|
|
darf ich dir zwecks besserer leserlichkeit etwas anmalen?
Zitat: |
on ProcessIt(theFile)
tell application "Finder"
set FileName to (name of theFile)
set NamensBeginn to "EOS_" as text
set modificationdate to modification date of theFile
set jahreszahl to ((year of modificationdate) as text) -- extrahiert das Jahr aus d
set jahr to text 3 thru 4 of jahreszahl -- extrahiert die letzten 2 ziffern aus Jahr aus jahreszahl
set monat to word 3 of ((current date) as text) -- extrahiert den Monat (als Monatsnamen) aus d
set MonatsListe to¬
{January, February, March, April, May, June, July, August, September, October, November, December}
repeat with i from 1 to 12
if modificationdate's month = item i of MonatsListe then
set monat to text -2 thru -1 of ("0" & i)
exit repeat -- wenn true, wird die Schleife verlassen
end if
end repeat
-- Datumsformat für den Tag zuweisen (zweistelliger Zahlenwert)
set tag to (modificationdate)
if length of (day of (modificationdate) as string) is 1 then
set tag to "0" & (day of (modificationdate) as text)
else
set tag to (day of (modificationdate) as text)
end if
set datum to jahr & "-" & monat & "-" & tag
-- neue Ordner anlegen
set NeuerOrdner2005 to folder "dokumente pb:bibliothek:photos:datum:2005"
set NeuerOrdner2006 to folder "dokumente pb:bibliothek:photos:datum:2006"
set NeuerOrdner2007 to folder "dokumente pb:bibliothek:photos:datum:2007"
set NeuerOrdner2008 to folder "dokumente pb:bibliothek:photos:datum:2008"
if jahreszahl is "2005" then set NeuerOrdnerDatum to NeuerOrdner2005
if jahreszahl is "2006" then set NeuerOrdnerDatum to NeuerOrdner2006
if jahreszahl is "2007" then set NeuerOrdnerDatum to NeuerOrdner2007
if jahreszahl is "2008" then set NeuerOrdnerDatum to NeuerOrdner2008
try
set newFolder to (make new folder at NeuerOrdnerDatum with properties {name:datum})
set owner of newFolder to "myOwner"
set owner privileges of newFolder to read write
set group of newFolder to "myGroup"
set group privileges of newFolder to read write
set everyones privileges of newFolder to read write
end try
-- files bewegen
set NeuerOrt to (NeuerOrdnerDatum as text) & (datum)
move theFile to NeuerOrt
--neuer Name
set FileNameNeu to (NamensBeginn & "_" & (characters 5 through 8 of FileName) as text) & (datum as text) & characters 9 through end of FileName
set the name of the file theFile in NeuerOrt to FileNameNeu
end tell
end ProcessIt
|
wo klemmts?
wo kann man folg. in deinem Skript erkennen(sehe nur EOS_)
especiaria hat Folgendes geschrieben: | „alias "EOS350:DCIM:102CANON:_MG_0201.JPG"“ |
_________________ Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius |
|
Nach oben |
|
 |
especiaria •->

Anmeldedatum: 24.04.2005 Beiträge: 5
|
Verfasst am: 24.04.2005 - 21:46 Titel: |
|
|
ja danke spirigwi für die übersichtlichkeit. ist ja super. wie hastn das gemacht? mit diesen B, i, u und Schriftfarbe Buttons hab ich bei mir kein Unterschied gesehen. aber gut, werde ich noch rausfinden.
ja, aber hast Du eine Idee warum das Umbennen ganz zum Schluss
bei
"set the name of the file theFile in NeuerOrt to FileNameNeu
die Fehlermeldung bringt?
(also das mit den farben und bold und so haut nicht hin..) _________________ pb 867 MHz, osx 10.3.9 |
|
Nach oben |
|
 |
especiaria •->

Anmeldedatum: 24.04.2005 Beiträge: 5
|
Verfasst am: 24.04.2005 - 21:50 Titel: |
|
|
ja dieses „alias "EOS350:DCIM:102CANON:_MG_0201.JPG"“ ist der Pfad meiner Speicherkarte. taucht im Script nicht auf, da zu Beginn ein Ordneraufruf steht.
verzeih meine unpräzise Ausdrucksform _________________ pb 867 MHz, osx 10.3.9 |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 24.04.2005 - 21:55 Titel: |
|
|
Versuche mal folgendes:
set theMovedFile to move theFile to folder NeuerOrt
So bekommst du beim Bewegen der Datei bereits eine Referenz zum neuen Ablageort.
Dein Code:
set the name of the file theFile in NeuerOrt to FileNameNeu
Bitte abändern in:
set the name of the theMovedFile to FileNameNeu _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
especiaria •->

Anmeldedatum: 24.04.2005 Beiträge: 5
|
Verfasst am: 24.04.2005 - 22:13 Titel: |
|
|
danke, jetzt immerhin andere warnmeldung:
„Finder“ hat einen Fehler erhalten: Es existiert bereits ein Objekt mit demselben Namen an diesem Ort.
den Datumsordner 05-04-22 legt er immernoch brav an, kopiert auch die erste datei in diesen ordner, bennent sie aber nicht um und bringt oben genannte Fehlermeldung.
könnte das was mit try zu tun haben. weil klar, den Ordner 05-04-22 hat er natürlich jetzt schon angelegt, aber ich dachte try übergeht das dann, oder nicht? _________________ pb 867 MHz, osx 10.3.9 |
|
Nach oben |
|
 |
especiaria •->

Anmeldedatum: 24.04.2005 Beiträge: 5
|
Verfasst am: 24.04.2005 - 22:21 Titel: |
|
|
heyhey, wahnsinn! ich hab´s,
will sagen, Du hattest es. ich hatte vergessen den anderen move befehl zu löschen. jetzt funktionierts super.
jetzt mach ich mich an den Rest.
vielen Dank
Jonas _________________ pb 867 MHz, osx 10.3.9 |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2002 phpBB Group Deutsche Übersetzung von phpBB.de
|
|
|