Det er alltid godt å vite at noen kommando linje magi, som noen ganger er det enklere å behandle kommandoer på den måten.
Denne guiden viser Forfiles-kommandoen i Windows Vista og Windows 7 (Oppdatering: Også tilgjengelig i nyere versjoner av Windows).
Forfiles kan behandle filer basert på navn, filtyper og alder. Det er for eksempel mulig å finne alle dokumenter i en mappe som er eldre enn 20 dager, eller alle dokumenter i c:documents som har blitt endret etter en bestemt dato.
Den forfiles kommandoen kan være kombinert med behandling av valg for å slette disse filene, eller til å opprette en liste over alle filer som samsvarer med filtre. Kan ta en nærmere titt på forfiles kommando.
FORFILES [/P banenavn] [/M searchmask] [/S] [/C command] [/D [+ | -] {dd/MM/yyyy | dd}]
Beskrivelse: Velger du en fil (eller filer) og utfører en kommando på fil. Dette er nyttig for batch-jobber.
Parameterliste:
- /P banenavn Angir banen for å starte søket. Standardmappen er gjeldende arbeidskatalog (.).
- /M searchmask Søk filene i henhold til en searchmask. Standard searchmask er ‘*’ .
- /S Instruerer forfiles å recurse i undermapper. Som “DIR /S”.
- /C-kommandoen Angir hvilken kommando som skal utføre for hver fil. Kommandoen strenger bør være innpakket i doble anførselstegn. Standard kommando er “cmd /c ekko @fil”.
Følgende variabler kan brukes i streng kommando:
- @fil – returnerer navnet på filen.
- @fname – returnerer fil uten forlengelse.
- @ext – returnerer bare extension of filen.
- @bane – returnerer den fullstendige banen til filen.
- @relpath – returnerer den relative banen til filen.
- @isdir – returnerer “TRUE” om en filtype er en katalog, og “FALSKE” for filer.
- @fsize – returnerer størrelsen på filen i byte.
- @fdate – returnerer dato for siste endring av filen.
- @ftime – returnerer sist endret tid på filen.
For å inneholde spesialtegn i kommandolinjen, kan du bruke den heksadesimale koden for tegnet i 0xHH format (eks. 0x09 for kategorien). Interne CMD.exe kommandoer bør innledes med “cmd /c”.
/D dato Velger filer med dato for siste endring større enn eller lik (+), eller mindre enn eller lik (-), angitt dato ved bruk av “dd/MM/åååå” – format, eller velger filer med dato for siste endring større enn eller lik (+) gjeldende dato pluss “dd” dager, eller mindre enn eller lik (-) gjeldende dato minus “dd” dager. Gyldig “dd” antall dager du kan være i størrelsesorden 0 – 32768. “+” er tatt med som standard logg hvis den ikke er angitt.
/? Viser denne hjelpemeldingen. Denne hjelp-filen kan åpnes ved å skrive inn kommandoen forfiles /? i en ledetekst. Trykk på Windows-R, skriv inn cmd, og trykk enter for å starte kommandolinjen i Windows.
Kommandoen forfiles /S c:test /M .doc /S /D -10 søk i katalogen c:test og alle dens undermapper for å finne filer med .doc-utvidelse som er eldre enn 10 dager.
Parameteren /p etterfulgt av en katalog definerer start-katalog, /s inneholder undermapper i søk, /m filtre filer og mapper basert på de angitte strengen, og /D definerer dato eller en tidsperiode.
/C-kommando brukes til å behandle filer som er funnet ytterligere. Det kan for eksempel brukes til å kjøre følgende kommando: /C “cmd /c ekko @fname” > test.txt ekko navn på hver fil funnet og lagre resultatene i text.txt i den samme katalogen.
Full kommandoen så ser ut som dette forfiles /S c:test /M .doc /S /D -10 /C “cmd /c ekko @fname” > test.txt
En annen mulighet er å slette filer som samsvarer med søket, dette gjøres med kommandoen /C “cmd /c del @Fil
Det er imidlertid anbefalt å teste utgang først, før utstedelse delete-kommandoen til å sørge for at bare de riktige filene er slettet. Erfarne brukere kan opprette en satsvis fil for å utføre forfiles regelmessig.