Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Hiermee selecteert en voert u een opdracht uit voor een bestand of set bestanden. Deze opdracht wordt het meest gebruikt in batchbestanden.
Syntaxis
forfiles [/P pathname] [/M searchmask] [/S] [/C command] [/D [+ | -] [{<date> | <days>}]]
Parameterwaarden
Maatstaf | Beschrijving |
---|---|
/P-<pathname> |
Hiermee geeft u het pad van waaruit de zoekopdracht moet worden gestart. Standaard wordt zoeken gestart in de huidige werkmap. |
/m <searchmask> |
Hiermee zoekt u bestanden op basis van het opgegeven zoekmasker. De standaardzoekmasker is * . |
/S | Hiermee geeft u de opdracht forfiles opdracht om recursief te zoeken in submappen. |
/C-<command> |
Voert de opgegeven opdracht uit op elk bestand. Opdrachtreeksen moeten tussen dubbele aanhalingstekens worden verpakt. De standaardopdracht is "cmd /c echo @file" . |
/D-[{+\|-}][{<date> | <days>}] |
Hiermee selecteert u bestanden met een datum die het laatst is gewijzigd binnen het opgegeven tijdsbestek:
|
/? | Geeft de Help-tekst weer in het cmd-venster. |
Opmerkingen
De opdracht
forfiles /S
is vergelijkbaar metdir /S
.U kunt de volgende variabelen in de opdrachtreeks gebruiken zoals opgegeven door de opdrachtregeloptie /C:
Veranderlijk Beschrijving @FILE Bestandsnaam. @FNAME Bestandsnaam zonder extensie. @EXT Bestandsnaamextensie. @PATH Volledig pad van het bestand. @RELPATH Relatief pad van het bestand. @ISDIR Evalueert naar TRUE als een bestandstype een map is. Anders resulteert deze variabele in ONWAAR. @FSIZE Bestandsgrootte, in bytes. @FDATE Datumstempel laatst gewijzigd op het bestand. @FTIME Laatst gewijzigd tijdstempel op het bestand. Met de forfiles opdracht kunt u een opdracht uitvoeren op of argumenten doorgeven aan meerdere bestanden. U kunt bijvoorbeeld de opdracht op alle bestanden in een boomstructuur uitvoeren met de bestandsnaamextensie .txt. U kunt ook elk batchbestand (*.bat) uitvoeren op station C, met de bestandsnaam Myinput.txt als het eerste argument.
Met deze opdracht kunt u het volgende doen:
Selecteer bestanden op een absolute datum of een relatieve datum met behulp van de parameter /d.
Bouw een archiefstructuur met bestanden met behulp van variabelen zoals @FSIZE en @FDATE.
Onderscheid maken tussen bestanden en mappen met behulp van de variabele @ISDIR.
Voeg speciale tekens toe aan de opdrachtregel met behulp van de hexadecimale code voor het teken, in 0xHH-indeling (bijvoorbeeld 0x09 voor een tabblad).
Deze opdracht werkt door de vlag
recurse subdirectories
te implementeren op hulpprogramma's die zijn ontworpen om slechts één bestand te verwerken.
Voorbeelden
Als u alle batchbestanden op station C wilt weergeven, typt u:
forfiles /P c:\ /S /M *.bat /C "cmd /c echo @file is a batch file"
Als u alle mappen op station C wilt weergeven, typt u:
forfiles /P c:\ /S /M * /C "cmd /c if @isdir==TRUE echo @file is a directory"
Als u alle bestanden in de huidige map wilt weergeven die ten minste één jaar oud zijn, typt u:
forfiles /S /M *.* /D -365 /C "cmd /c echo @file is at least one year old."
Als u de tekst wilt weergeven bestand verouderd is voor elk van de bestanden in de huidige map die ouder zijn dan 1 januari 2007, typt u:
forfiles /S /M *.* /D -01/01/2007 /C "cmd /c echo @file is outdated."
Als u de bestandsnaamextensies van alle bestanden in de huidige map in kolomindeling wilt weergeven en een tabblad wilt toevoegen vóór de extensie, typt u:
forfiles /S /M *.* /C "cmd /c echo The extension of @file is 0x09@ext"