Dateiname mit Ziffern erweiteren/umschreiben

Dieses Thema im Forum "Scripting und Automatisierung" wurde erstellt von silencio, 12.02.2007.

  1. silencio

    silencio Thread Starter MacUser Mitglied

    Beiträge:
    6
    Zustimmungen:
    0
    MacUser seit:
    06.11.2004
    Hallo Folks
    Wie sieht ein Applescript-Dropplet aus welche diese Funktion hat.
    Bei ziehen der .jpg-Datei über das Dropplet wird eine bestimmte Stelle des bestehenden Namens ersetzt. Brauche es als Sortier- und Umbenennungsfunktion von Bildern.

    Bestehender Dateiname z.B.:
    000000_hallo.jpg

    1 Dropplet ändert z.B Stelle 4 des Dokumentnamens auf die Nummer 9:
    000900_hallo.jpg

    2 Dropplet ändert z.B Stelle 1 des Dokumentnamens auf die Nummer 5:
    500900_hallo.jpg

    3 Dropplet ändert z.B Stelle 6 des Dokumentnamens auf die Nummer 2:
    500902_hallo.jpg

    4 Dropplet ändert z.B Stelle 6 des Dokumentnamens auf die Nummer 8:
    500908_hallo.jpg
    etc.

    Danke für eure Hilfe ;)
    Ciao Silencio

    PS: Brauche natürlich nur ein Beispiel welches ich nach "gusto" anpassen kann.
     
  2. little_pixel

    little_pixel MacUser Mitglied

    Beiträge:
    3.806
    Zustimmungen:
    938
    MacUser seit:
    06.06.2006
    Hallo,

    hast Du schon einen Ansatz?
    Wenn ja, dann setzt ihn bitte ein. Wir bzw. ich helfe Dir dann gerne.
    Die Umsetzung ist schnell realisierbar.

    Viele Grüße
     
  3. little_pixel

    little_pixel MacUser Mitglied

    Beiträge:
    3.806
    Zustimmungen:
    938
    MacUser seit:
    06.06.2006
    Code:
    tell application "Finder"
    	
    	--hier ändern
    	set positionKorrektur to 1
    	set neuesZeichen to "NEUERTEXT"
    	
    	--hier nichts ändern
    	set sel to selection
    	set neuerDateiname to ""
    	set alterDateiname to ""
    	
    	repeat with naechsteDatei in sel
    		try
    			set alterDateiname to name of naechsteDatei
    		end try
    		
    		set posZaehler to 0
    		
    		repeat with aChar in every character of alterDateiname
    			set posZaehler to posZaehler + 1
    			
    			if posZaehler is equal to positionKorrektur then
    				set neuerDateiname to (neuerDateiname & neuesZeichen) as string
    			else
    				set neuerDateiname to (neuerDateiname & aChar) as string
    			end if
    			
    		end repeat
    		
    		try
    			set name of naechsteDatei to neuerDateiname
    			set neuerDateiname to ""
    			set alterDateiname to ""
    		end try
    		
    	end repeat
    	
    end tell
    
    - Files markieren, im Finder
    - Skript ausführen

    Zuvor bitte die Position angeben, und das gewünschte Zeichen bzw. Text.
    Dropplet ebenfalls bitte selbst erstellen! :)

    Viel Spass und Erfolg!
     
    Zuletzt bearbeitet: 12.02.2007
  4. silencio

    silencio Thread Starter MacUser Mitglied

    Beiträge:
    6
    Zustimmungen:
    0
    MacUser seit:
    06.11.2004
    Aloha little_pixel.
    Bin ein "kleiner Dunst" im Skripten.
    Das ist was ich habe es ersetzt eine leere Stelle mit etwas.
    Weiss aber nicht wie genau eine bestimmte Stelle ausgelesen und geändert wird noch wie ich die Ordnerfunktion auf nur Datei umstelle.
    THX
    ------------------ code

    on open dateiobjekte
    tell application "Finder"
    set target_files to every file of ¬
    (entire contents of (choose folder)) whose name contains " "
    repeat with current_file in target_files
    set new_file_name to my getNewFileName(name of current_file)
    set name of current_file to new_file_name
    end repeat
    end tell
    end open

    on getNewFileName(old_name)
    set {old_delims, my text item delimiters} to ¬
    {my text item delimiters, " "}
    set name_parts to text items of old_name
    set my text item delimiters to "_"
    set new_name to name_parts as string
    set my text item delimiters to old_delims
    return new_name
    end getNewFileName
     
  5. little_pixel

    little_pixel MacUser Mitglied

    Beiträge:
    3.806
    Zustimmungen:
    938
    MacUser seit:
    06.06.2006
    Mh, ehrlich gesagt kannst Du mit dem Skript nicht so viel anfangen ;-)
    (Also für Deine Absicht, sonst ist es "schön")
    Ist aber auch nicht schlimm. Oben habe ich Dir ja die Lösung geschrieben. :)

    Viele Grüße
     
  6. silencio

    silencio Thread Starter MacUser Mitglied

    Beiträge:
    6
    Zustimmungen:
    0
    MacUser seit:
    06.11.2004
    Well I'm impressed!
    Jetzt schiebt es die definierte Zahl dazwischen es sollte sie aber ersezten?
    Die Anzahl Anschläge der Datei muss aber immer gleich bleiben.
    ?
     
  7. little_pixel

    little_pixel MacUser Mitglied

    Beiträge:
    3.806
    Zustimmungen:
    938
    MacUser seit:
    06.06.2006
    Okay,

    im Gefecht ein kleiner Logikfehler:

    Code:
    set neuerDateiname to (neuerDateiname & neuesZeichen & aChar) as string
    
    bitte ändern zu

    Code:
    set neuerDateiname to (neuerDateiname & neuesZeichen) as string
    
    Oben habe ich die Korrektur vorgenommen.
     
  8. silencio

    silencio Thread Starter MacUser Mitglied

    Beiträge:
    6
    Zustimmungen:
    0
    MacUser seit:
    06.11.2004
    Hey, hey, hey... :p
    Na wenn das nicht das ist was ich gesucht habe soll mich doch der "Özzi" fressen. Danke little_pixel! Your the one!!!!!!

    Nun da du warm gelaufen bist hätte ich noch ne Frage
    (...wenn ich noch eine zu gute habe).

    Das Ergebnis sieht z.B. dann so aus:
    243567_000000.jpg
    963452_000000.jpg
    987654_000000.jpg
    123452_000000.jpg
    222435_000000.jpg

    Jetzt müsste ich aus einem gewählten Ordner nur die hinteren 6 Stellen fortlaufend durchnummerieren/überschreiben (immer 6-Stellig bleibend mit Nullen aufgefüllt). Ich müsste aber die Startzahl definieren können (z.B 000123) ab wo gezählt wird. Der erste Teil muss natürlich unberührt bleiben.

    243567_000123.jpg
    963452_000124.jpg
    987654_000125.jpg
    123452_000126.jpg
    222435_000127.jpg
    etc.

    Wen du lust und Zeit hast...
    :rolleyes:
     
  9. little_pixel

    little_pixel MacUser Mitglied

    Beiträge:
    3.806
    Zustimmungen:
    938
    MacUser seit:
    06.06.2006
    Das ist nicht so schwer ;-)
    Ich bin jetzt einfach mal so "frech", und sage: Versuch es einmal!

    Wenn Du nicht weiterkommst, dann ist Hilfe vorhanden.
    Einfach den Code mitteilen.

    Viel Erfolg!

    PS: Nicht sauer sein, aber Du mußt ja was lernen ;-)
     
  10. silencio

    silencio Thread Starter MacUser Mitglied

    Beiträge:
    6
    Zustimmungen:
    0
    MacUser seit:
    06.11.2004
    ... werd es versuchen. No worries. Thanks. :cool:
     
Die Seite wird geladen...

Diese Seite empfehlen