• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Datei nach Schema umbennen

skepsis

Westfälische Tiefblüte
Registriert
07.02.06
Beiträge
1.050
Hallo zusammen,

gibt es die Möglichkeit, dass ich per AppleScript (oder Automator) eine Datei nach folgendem Muster umbenennen kann:
Datum_Name des Ordners in dem Datei sich befindet.pdf
also z.b.: 110726_ordner1.pdf

Es ist es möglich, dass ich diese Aktion per Klick im Kontextmenu auf die Datei im Finder auslöse o.ä.?
Das wäre perfekt. ;)
Vielen Dank bereits vorab!

Grüße
Skepsis
 

Samsas Traum

Pommerscher Krummstiel
Registriert
24.04.08
Beiträge
3.025
Ja dies ist alles möglich ;)
Ansich ist das auch mit dem Automator möglich, welches für dich einfacher wäre. Allerdings gibt dort glaub ich nicht die Möglichkeit den Namen des übergeordneten Ordners auszulesen und dem Objekt-Namen hinzuzufügen.

Aber mittels AppleScript ist dies definitiv möglich, und auch im Kontextmenü verankerbar.

Solltest da Hilfe brauchen oder Ähnliches, sag Bescheid ;)
 

MacAlzenau

Golden Noble
Registriert
26.12.05
Beiträge
22.522
"Solltest du da Hilfe brauchen…" - ich interpretier den Eröffnungspost mal glattweg so, daß er/sie sicher Hilfe braucht und nicht einfach wissen wollte, ob's geht.
Auch wenn das die Frage war.
Wäre sicher hülfreich, wenn du da ein Shell- oder Apple-Script vorschlagen könntest.
Sag ich mal so. Denn mich würd's auch interessieren…
 

Samsas Traum

Pommerscher Krummstiel
Registriert
24.04.08
Beiträge
3.025
Hätte ja auch sein können das er wenn es mit AS gehen würde Lust hätte es selbst zu machen ;)

OK, kleine Verständnis-Frage:
Welches Datum ist erforderlich ?
Erstell-Datum der Datei
Letzte Veränderung an der Datei
Zeitpunkt der Ausführung des Scripts
...
 

Samsas Traum

Pommerscher Krummstiel
Registriert
24.04.08
Beiträge
3.025
So, sollte folgendermaßen klappen, wenn der aktuelle Zeitpunkt gewünscht ist.

So gut, bitte folgende Schritte ausführen:

1. Automator öffnen (der ist nötig für einen Kontextmenü-Eintrag)
2. Einen "Dienst" erstellen.
3. Aus der Auswahlliste "AppleScript ausführen" aussuchen, und per Drag 'n' Drop ins Zielgebiet ziehen.
4. Den vorgegebenen Inhalt des Scriptes komplett löschen.
5. Folgendes Script einfügen:

Code:
set list_of_names to ""

tell application "Finder"
	set my_selection to selection
	set my_folder to the name of front window
	set my_path to target of front window
	set now to year of (current date) & (month of (current date) as integer) & day of (current date) as text
	repeat with my_files in my_selection
		set oldName to name of my_files
		set AppleScript's text item delimiters to "."
		set suffix to the last text item of oldName
		set AppleScript's text item delimiters to " "
		set the name of the file oldName of my_path to now & "_" & my_folder & "." & suffix
	end repeat
end tell

6. Oberhalb des Scriptes den Namen der im Kontextmenü erscheinen soll eintragen.
7. Wählen das nur Dateien und Ordner diese Kontextmenü erhalten
8. Wählen das dieses Kontextmenü nur im Finder ausfauch
9. Speichern mit einem schönen Namen.
10. Fertig
11. Ausprobieren

Funktionsweise:
Finder öffnen
Gewünschte Dateie(n) markieren
Kontextmenü -> Dienste -> Dein Gewählter Name
Name der Datei ändert sich
 
  • Like
Reaktionen: skepsis

skepsis

Westfälische Tiefblüte
Registriert
07.02.06
Beiträge
1.050
Vielen, vielen Dank!
Ich gebe zu: In der Tat wollte ich nicht nur wissen, OB es geht, sondern hatte gehofft, dass auch jemand den Code verrät! ;)
Nun wäre noch schön, wenn

a) das Jahr 2011 nur als 11 geschrieben wird
b) bei Monaten vor Oktober ne Null vor die Zahl kommt (07) / Analog für den Tag auch

Der absolute Traum wäre dann noch, wenn
c) sich ne Art Input-box öffnet, in der ich einen Text schreiben kann, der dann zwischen Datum und Ordnername platziert wird.

Geht das?

Grüße
 

Samsas Traum

Pommerscher Krummstiel
Registriert
24.04.08
Beiträge
3.025
Joa das geht alles ;)
Werd das heut Abend mal erweitern wenn ich zu Haus bin.

Edit:

Wenn du als Beispiel 10 Dateien makierst, soll sich für jede eine Input-Box nacheinander öffnen oder der "Wert" den du einträgst für alle 10 gelten ?
 

Samsas Traum

Pommerscher Krummstiel
Registriert
24.04.08
Beiträge
3.025
Haste mein Edit gelesen ? Wäre gut wenn das noch irgendwann beantwortest ;)

Aso, und wenn du noch irgendwelche speziellen Wünsche hast, immer gleich raus damit, ist im Endeffekt einfacher weil man gedanklich noch drin ist.
Ok gut, das Script ist jetzt nicht wirklich umfangreich, und wirds auch wohl nicht wenn nicht noch was Spektakuläres dazukommt ;)
 

skepsis

Westfälische Tiefblüte
Registriert
07.02.06
Beiträge
1.050
Weder noch. Es sind immer nur einzelne Dateien! ;)
 

Samsas Traum

Pommerscher Krummstiel
Registriert
24.04.08
Beiträge
3.025
Hier ist das Ergebnis, momentan wird der eingegebene Text auf alle markierten Dateien übertragen.
Sollen differenzierte Input-Boxen für jede Datei erscheinen einfach den gesamten "display dialog" Absatz in den "repeat" Block an erste Stelle setzen.

Code:
set my_files to ""

tell application "Finder"
	
	set my_selection to selection
	set my_folder to the name of front window
	set my_path to target of front window
	
	set year_string to year of (current date) as text
	set year_string to item 3 of year_string & item 4 of year_string
	set month_string to (month of (current date) as integer) as text
	if length of month_string is 1 then set month_string to "0" & month_string
	set day_string to day of (current date) as text
	if length of day_string is 1 then set day_string to "0" & day_string
	
	set now to year_string & month_string & day_string as text
	
	display dialog "Bitte geben sie den gewünschten Teil des Dateinamens an:" default answer ""
	set the my_text to the text returned of the result
	
	repeat with my_files in my_selection
		set oldName to name of my_files
		set AppleScript's text item delimiters to "."
		set suffix to the last text item of oldName
		set AppleScript's text item delimiters to " "
		set the name of the file oldName of my_path to now & "_" & my_text & "_" & my_folder & "." & suffix
	end repeat
end tell

Achso, damit kein Doppel-Eintrag im Kontext-Menü entsteht mit dem Automator den Dienst laden.
Den findest du am schnellsten wenn du im "Öffnen-Menü" unten bei Datei-Art "Dienste" wählst, dann wechselt er automatisch in den richtigen Ordner.
 
Zuletzt bearbeitet:

skepsis

Westfälische Tiefblüte
Registriert
07.02.06
Beiträge
1.050
Perfekt. Du hast meinen Alltag spürbar erleichtert! ;)