opticus Skrevet 23. oktober 2004 Del Skrevet 23. oktober 2004 hei, jeg prøver finne et script som flytter filer eldre enn en gitt dato. feks alle filer eldre enn 2 mndr skal flyttes til et annet sted, noen som har peiling på hvordan dette kan gjøres? Lenke til kommentar
medi8or Skrevet 23. oktober 2004 Del Skrevet 23. oktober 2004 Er ingen kløpper med skript, men dette virker vel hvertfall: #!/bin/bash for FILE in `find $1 -type f -ctime +60`; do mv "$FILE" "$2" done Filer eldre enn 60 dager flyttes fra katalogen $1 (og underkataloger), til katalogen $2... Lenke til kommentar
opticus Skrevet 24. oktober 2004 Forfatter Del Skrevet 24. oktober 2004 takker, får ikke testet før i ettermiddag, men lurte på om kanskje dette her ville fungerere også: find <current_dir> -type f -ctime +60 -exec mv {} <new_dir>\; {} skal bli erstattet med filnavnet? \ er for å avslutte -exec Lenke til kommentar
iDude Skrevet 24. oktober 2004 Del Skrevet 24. oktober 2004 takker, får ikke testet før i ettermiddag, men lurte på om kanskje dette her ville fungerere også: find <current_dir> -type f -ctime +60 -exec mv {} <new_dir>\; {} skal bli erstattet med filnavnet? \ er for å avslutte -exec Burde funke det... {} blir erstattet med filnavnet ja Lenke til kommentar
opticus Skrevet 24. oktober 2004 Forfatter Del Skrevet 24. oktober 2004 find <current_dir> -type f -ctime +60 -exec mv {} <new_dir>\; denne bare flytter filene, men tar ikke med mappene om det er mapper der.. men flytter over filene i alle undermapper, hjelp? Lenke til kommentar
zyp Skrevet 24. oktober 2004 Del Skrevet 24. oktober 2004 find <current_dir> -type f -ctime +60 -exec mv {} <new_dir>/{}\; Men du får sannsynligvis et problem med den, med at filer flyttes til mapper som ikke eksisterer. Lenke til kommentar
opticus Skrevet 25. oktober 2004 Forfatter Del Skrevet 25. oktober 2004 find * -ctime +60 -exec mv {} <dir2>/{} \; denne funker nesten... jeg må nå stå i riktig path når kommandoen kjøres, og alt ser riktig ut.. jeg trenger bare et linje til som lager alle mappene først, noen tips? hmm... find * -ctime +60 -type d -exec mkdir <dir2>/{} \; etterfulgt av: find * -ctime +60 -exec mv {} <dir2>/{} \; dette burde jo gå som smurt... Lenke til kommentar
opticus Skrevet 25. oktober 2004 Forfatter Del Skrevet 25. oktober 2004 eller ikke... dette ble feil dette også, nå lager den først ny mappestruktur under den nye lokasjonen, men når alt skal flyttes så blir feks det slik: <gammeldir>/jabba/jubbu.html <nydir>/jabba/jabba/jubbu.html jeg er nær, nå må jeg eta frokost. kom gjerne med flere innspill her! Lenke til kommentar
opticus Skrevet 25. oktober 2004 Forfatter Del Skrevet 25. oktober 2004 fant ut av det: her er et "script" som går gjennom og flytter alle mapper som er modifisert for mer enn 60 dager siden: find * -mtime +60 -type d -exec mv {} <ny_mappe>{} \; så kommer linjen som flytter alle filer, det er viktig at man flytter mappene først, ellers flytter du over alle filene fra og med der du er og fra alle sub directories over i den nye mappen og mappestrukturen er da ødelagt i <ny_mappe> find * -mtime +60 -type f -exec mv {} <ny_mappe>/{} \; Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå