Gebruik Forfiles Voor Het Verwerken Van Bestanden Gebaseerd Op De Leeftijd

0
157

Het is altijd goed om te weten dat sommige command line magic, want het is soms makkelijker te verwerken van de opdrachten die manier.

Deze gids toont de Forfiles commando in Windows Vista en Windows 7 (Update: Ook beschikbaar in nieuwere versies van Windows).

Forfiles kunt verwerken van bestanden op basis van namen, extensies en leeftijd. Het is bijvoorbeeld mogelijk om alle documenten in een map die ouder zijn dan 20 dagen, of alle documenten in c:documents die zijn gewijzigd sinds een bepaalde datum.

De forfiles opdracht kan gekoppeld worden aan de verwerking van opties voor het verwijderen van deze bestanden, of om een lijst te maken van alle bestanden die overeenkomen met de filters. Laten we eens een kijkje op de forfiles opdracht.

FORFILES [/P padnaam] [/M searchmask] [/S] [/C-command] [/D [+ | -] {dd/MM/jjjj | dd}]

Beschrijving: hiermee Selecteert u een bestand (of de bestanden) en voert een opdracht op het bestand. Dit is handig voor batch jobs.

forfiles

Parameter Lijst:

  • /P padnaam van het pad om te beginnen met zoeken. De standaardlocatie is de huidige map (.).
  • /M searchmask Zoekt naar bestanden volgens een searchmask. De standaardzoekfilter is*’ .
  • /S Geeft aan dat forfiles ook in submappen. Als “DIR /S”.
  • /C opdracht de opdracht uitvoeren voor elk bestand. De opdracht moet worden verpakt in dubbele aanhalingstekens. De standaard commando “cmd /c echo @file”.

De volgende variabelen kunnen worden gebruikt in de opdracht:

  • @file – geeft de naam van het bestand.
  • @fname – geeft de naam van het bestand zonder extensie.
  • @ext – geeft alleen de extensie van het bestand.
  • @weg – geeft het volledige pad van het bestand.
  • @relpath – geeft het relatieve pad van het bestand.
  • @isdir – het resultaat “TRUE” als een bestandstype in een directory, en “ONWAAR” voor bestanden.
  • @fsize – geeft de grootte van het bestand in bytes.
  • @fdate – geeft de datum van laatste wijziging van het bestand.
  • @ftime – geeft de laatste wijziging van het bestand.

Om speciale tekens in de opdrachtregel, gebruikt u de hexadecimale code voor het teken in 0xHH-formaat (bijv. 0x09 voor tab). Interne CMD.exe opdrachten worden voorafgegaan met “cmd /c”.

/D datum-hiermee Selecteert u de bestanden met een datum van laatste wijziging groter dan of gelijk aan ( + ) of minder dan of gelijk aan ( – ) de opgegeven datum met behulp van de “dd/MM/yyyy; of selecteert u de bestanden met een datum van laatste wijziging groter dan of gelijk aan (+) de huidige datum plus “dd” dagen, of minder dan of gelijk aan (-) de huidige datum minus “dd” dagen. Een geldige “dd” aantal dagen kan elk getal in het bereik van 0 – 32768. “+” is het standaardteken als niet opgegeven.

/? Dit helpbericht weergeven. Dit help-bestand kan worden geopend door het invoeren van het commando forfiles /? in een opdrachtprompt. Druk op Windows-R, typ cmd, en druk op enter om de lancering van de opdrachtregel in Windows.

De opdracht forfiles /P c:test /M .doc /S /D -10 gezocht in de directory c:test en alle submappen voor bestanden met de .doc-extensie die ouder zijn dan 10 dagen.

De parameter /p gevolgd door een map definieert de start-directory /s inclusief submappen in het zoeken /m filtert de bestanden en mappen op basis van de ingevoerde tekenreeks en /D bepaalt de datum of tijd.

De /C-commando wordt gebruikt voor het verwerken van de bestanden die zijn gevonden verder. Het kan bijvoorbeeld worden gebruikt voor het uitvoeren van het volgende commando: /C “cmd /c echo @vnaam” > test.txt de echo van de namen van alle gevonden bestanden en het opslaan van de resultaten in text.txt in dezelfde directory.

Het volledige commando ziet er dan zo uit forfiles /P c:test /M .doc /S /D -10 /C “cmd /c echo @vnaam” > test.txt

Een andere mogelijkheid is het verwijderen van de bestanden die aan de zoekterm voldoen, dit wordt gedaan met de command /C “cmd /c del @File

Het is echter aan te bevelen om te testen de uitgang van de eerste, vóór de afgifte van de opdracht verwijderen om ervoor te zorgen dat alleen de juiste bestanden worden verwijderd. Ervaren gebruikers kunnen maken van een batch-bestand uitvoeren forfiles regelmatig.