Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

Möjligt att flytta filer automatiskt?

Tråden skapades och har fått 18 svar. Det senaste inlägget skrevs .
1

Går det att få filer som hamnar i en mapp att automatiskt flyttas till andra mappar, beroende på vad de har för filtillägg?

Ett av de problem jag skulle vilja lösa är att jag tittar rätt mycket på webb-TV, och det hamnar alltid en massa onödiga .ram-filer i mappen där Safari lägger dem. Det vore praktiskt om det fanns något script eller liknande som automatiskt flyttar alla filer som hamnar där till en annan mapp, om de har .ram som tillägg. Det finns även en rad andra filtyper som det skulle vara underbart att få automatiskt sorterade till andra mappar.

Finns det några enkla lösningar? Mappkommandon? Någon som känner till program eller färdiga script man kan ladda ner någonstans? Tyvärr kan jag inget om AppleScript, så om det är enda vägen, så får det nog vara.

Vore intressant att veta om 10.3:s Automator gör produktion av sådana skript väsentligt enklare. "Scripting for the rest of us" så att säga...

  • Oregistrerad
  • 2004-09-30 06:53

Borde väl gå med applescript…

  • Oregistrerad
  • 2004-09-30 09:42

Har inte applescript något som heter folder actions?

Folder actions

  • Oregistrerad
  • 2004-09-30 09:48

Det torde väl vara på pricken det man skall använda.
Men det kanske är _lite_ för lätt

Niklas, det är AppleScript som gäller, men det är inte så svårt, jag har gjort ett exempelscript som du kan utgå från. Jag hade inga filmfiler att testa med, så jag gjorde det för jpg-bilder istället, men principen är densamma. Gör så här.

1) Skapa en mapp dit du vill flytta filerna
2) Starta Manusredigeraren/Script Editor, gör ett nytt tomt script och klistra in koden nedaför:

property theJPGFolder : alias "Macintosh HD:Users:richardr:Desktop:Ny mapp:"

on adding folder items to theFolder after receiving theAddedItems
	repeat with theItem in theAddedItems
		if (get busy status of (info for theItem)) is false then
			tell application "Finder"
				if name extension of theItem is "jpg" then
					move theItem to theJPGFolder
				end if
			end tell
		end if
	end repeat
end adding folder items to

3) Ändra den första raden som börjar med "property" och pekar ut sökvägen till mappen dit du vill flytta filerna. Det är strängen inom citationstecken som ska ändras så att den pekar ut den mapp du skapade i steg 1. Den första delen i strängen är disknamn och alla andra delar är undermappar. Mappnamn separeras med kolon (OBS, mappen måste finnas när du skriver in sökvägen så hoppa inte över steg 1)

4) Spara scriptet i Macintosh HD>Library>Scripts>Folder Actions Scripts. Ge det namnet "Flytta JPG" och stäng sedan manusredigeraren (Obs!, det finns en mapp som heter bara "Folder actions" men var noggrann med att lägga den i mappen som heter "Folder Actions Scripts"

5) Nu är du klar med scriptet och det dags att tala om vilken eller vilka mappar som ska använda ditt script. Det gör du genom att leta reda på den mapp du vill bevaka i Finder och högerklicka på den. I kontextmenyn väljder du alternativet "Koppla ett mappkommando"

6) Dialogrutan som nu visas ber dig välja ett script ur mappen "Folder Actions Scripts" Välj scriptet "Flytta JPG" och klicka ok

7) Börja njuta av din egen automatiska filflyttare...

Scriptet bör anpassas en del för att få det precis som du vill, men se till att få grunden att funka innan du börjar tänka på det.

Fy fan vad bra! Tack Richard för hjälpen, och tack Apple för systemet. Magiskt bra. Visste inte ens att detta gick...

Ja jag älskar AppleScript. I ärlighetens namn ska man säga att det går att göra även på PC, men det är onekligen något enklare på Mac. Det var bra att Niklas ställde frågan, för då kom jag mig äntligen för att göra ett sånt för min "download-folder", som flyttar alla PDF-filer man bara kikat på till en "kasta senare"-mapp

Hur utvidgar jag skriptet för att funka med flera oilika filer? T.ex. alla jpg till en mapp, pdf och doc till en annan, filmer till en tredje? Är det bara att definiera fler mappar, och sen bygga ut if-satsen?

Eller gör man fler skript?

(Ska fixa till min Download-mapp också...)

  • Oregistrerad
  • 2004-09-30 10:34

Borde väl bara vara några rader 'if' till

den första raden i scriptet, som heter "property" behövs egentligen inte, den är ( i det här fallet) bara till för att göra scriptet mer lättredigerad för ovana applescriptare men om du vill så kan du lägga till en likadan rad så att det ser ut såhär

property theJPGFolder : alias "Macintosh HD:Users:richardr:Desktop:Ny mapp:"
property thePDFFolder : alias "Macintosh HD:Users:richardr:Desktop:Ny mapp 2:"

Vad din "property" heter spelar ingen roll, men det är ofta smart att ge dem ett beskrivande namn så att man kommer ihåg nästa gång man behöver ändra

Nästa steg är att redigera scripet så att det blir en "else if-sats" det gör du så här

if name extension of theItem is "jpg" then
                                        move theItem to theJPGFolder
                                else if name extension of theItem is "pdf" then
                                        move theItem to thePDFFolder
                               end if

Aha. Var ju inte så svårt. Hatar egentligen att programmera, men detta borde gå relativt smärtfritt

Tack för hjälpen!

  • Oregistrerad
  • 2004-09-30 10:43
Ursprungligen av Leftrustle:

Aha. Var ju inte så svårt. Hatar egentligen att programmera, men detta borde gå relativt smärtfritt

Tack för hjälpen!

Mycker applescript går ju "spela in" - men just dethär är nog svårt utan att man får skriva några rader

Ja det går att spela in saker i Finder, men problemet är att det här inte är en ren finderoperation, dessutom kan man inte spela in villkorslogik, dvs "om villkor A är uppfyllt, gör si, men om villkor B är uppfyllt, gör något annat"

Personligen så är jag av uppfattningen att det är ett misstag att titta för mycket på Finders inspelade script, för då lär man sig fel saker och snöar in på ovidkommande detaljer, istället för att lära sig några få enkla grunder som man sen kan anpassa till ett stort antal situationer

Och förrutom det så kan Firefox användare mappa olika filer till olika ställen vid nerladdning.

Se där ja, endera dagen måste jag nog ta mig en ordentlig titt på Firefox

Tack Richard!

Att få koden till et färdigt script var mer än jag hade hoppats på. Det fungerar bra, förutom att Real Player inte kan spela filmen eftersom den inte hittar filen som har flyttats. Kunde man lösa det så vore det ju ännu bättre.

Men även om den saken inte löser sig, så kommer jag att ha stor nytta av manuset. Dels kommer jag att utöka det med mappar för fler filtyper, och dels tror jag det är bättre att ta fram .ram-filerna och starta dem manuellt, än att då och då behöva rensa min downloads-mapp från allt skräp som hamnar där. (Bland annat brukar jag dagligen titta på SVTs nyheter på nätet, så det brukar bli rätt många filer att rensa med tiden.)

Så här gjorde jag med mina PDF-filer, som inte heller ville öppnas, borde fungera med real-filerna också. Observera att jag satt "with replacing" utifall man laddar ner samma fil flera gånger, så behålls bara den senaste.

if name extension of theItem is "pdf" then
        move theItem to thePDFFolder with replacing
        open theItem
end if

Med den ändringen fungerar det perfekt!

Lite lustigt att problemet enbart drabbade Real Player. Jag har även lagt till flyttning av .wmv-filer (som jag öppnar med Windows Media Player) och .asf (som öppnas med VLC). De två spelarna har inga problem med att öppna filerna utan att jag lägger till "open theItem".

Tack igen för hjälpen! När jag rensade min "Safari Downloads" idag hade jag nästan 200 filer där, och av dem var det bara ca 30 jag ville spara. Nu blir det ordning och enklare att hålla reda på skräpet!

1
Bevaka tråden