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.

Åldersreglerad filradering

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

Jag har märkt att Ftpservrar hos oss, och våra leverantörer, ofta innehåller riktigt gamla filer. Vi är dåliga på att städa efter oss.

Är det någon som känner till ett program eller script som automatiskt raderar filer i valda mappar. Jag vill kunna ställa in en max ålder en fil får ha innan den raderas.

Denna funktion borde vara inbyggd i ett modernt operativsystem.

  • Oregistrerad
  • 2003-05-20 12:20

apple-f
files modified before [valt datum]
apple-a
apple-backspace

borde val fungera?

Det är ingen fungerande kod du ger exempel på, utan en vanlig manuell filsökning?
Hur blir syntaxen för
"släng filer i mappen A som är äldre än 20 dygn" i ett script?

  • Medlem
  • 2003-05-20 14:07

Det är ju inget script, utan bara en beskrivning på hur man (djävligt) enkelt kan radera filer med hjälp av sökverktyget. Öppna sök, med cmd-f, släng dit mappen, och ställ in kriterier. Det är väl inte så krångligt?

Ja jag såg det och rättade till mitt inlägg samtidigt som du skrev. Förlåt.

  • Medlem
  • 2003-05-20 14:13
Citat:

Skrevs ursprungligen av MACaron
Ja jag såg det och rättade till mitt inlägg samtidigt som du skrev. Förlåt.

Det var inte meningen att låta hård... Apple Script är ju roligt, så om någon kan göra ett skript, så är ju det toppen.

  • Oregistrerad
  • 2003-05-20 14:24

kika i manualen for find
nanting liknande borde funka

find path ! -newerct tid | xargs rm
funkar dock inte om sokvagen innehaller mellanrum da laser den mellanrumet som slut pa rad vilket inte alltid ar helt lyckat

finns sakert nan battre losning som jag tyvarr inte kanner till

  • Medlem
  • Stockholm
  • 2003-05-20 14:31

Kan man inte se till att lägga filerna i datummärkta mappar, så att man enkelt kan kasta gammalt jox?

år/månad/dag/typ/kund

osv

Eller är det dumt?

  • Medlem
  • International user
  • 2003-05-20 17:35

Låter som att en folder action skulle passa bra. Jag lekte lite i Scripteditor och kom fram med detta script. Det funkar tyvärr inte (inget händer) även om syntaxen är ok. Jag gissar att det beror att jag inte kan det där med hur man ändrar/jämför modification date eller andra saker. Ngn annan kan kanske bygga på/rätta till?

on adding folder items to this_folder after receiving added_items
try
tell application "Finder"
			
repeat with i from 1 to number of items in the added_items
set this_item to item i of the added_items
set day of modification date of this_item to today
end repeat

set the item_list to list folder this_folder without invisibles

repeat with i from 1 to number of items in the item_list
set this_item to item i of the item_list
if day of modification date of this_item is less than (today - 20) then
delete this_item
end if
end repeat
			
end tell
end try
end adding folder items to

Även om det inte funkar just nu så är tanken att skriptet ändrar modification date på alla filerna du släpper i mappen och kollar sedan efter filer som har ett modifciation date som är äldre än 20 dagar och raderar dess. Det körs varje gång du lägger till en fil i mappen.

Det finns säkert en massa andra fel med koden också. Jag kan inte mkt AS men tanken är väl rätt?

  • Medlem
  • International user
  • 2003-05-20 17:43

Vill man vara riktigt haxig, kör man detta som cronjob:
00 1 * * * find /var/log/*.gz -type f -mtime +7 -exec rm -f {} \;
10 1 * * * find /var/log/httpd/*.gz -type f -mtime +7 -exec rm -f {} \;

Detta körs varje dag i veckan, klockan 1.00 resp. 1.10.
Raderar alla *.gz filer i /var/log samt /var/log/httpd, som är äldre än 7 dagar.

/E

Matnyttiga tips!
Cron verkar så svårt. Men jag kan väl försöka göra ett Applescript som cron exekverar?

jag lägger en länk här om någon skulle ha samma behov som jag.
Trash Later
Funkar precis som jag vill!

1
Bevaka tråden