Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Seleziona ed esegue un comando in un file o in un set di file. Questo comando viene usato più comunemente nei file batch.
Syntax
forfiles [/P pathname] [/M searchmask] [/S] [/C command] [/D [+ | -] [{<date> | <days>}]]
Parameters
| Parameter | Description |
|---|---|
/P <pathname> |
Specifica il percorso da cui avviare la ricerca. Per impostazione predefinita, la ricerca inizia nella directory di lavoro corrente. |
/M <searchmask> |
Cerca i file in base alla maschera di ricerca specificata. La maschera di ricerca predefinita è *. |
| /S | Indica al comando forfiles di eseguire una ricerca ricorsiva nelle sottodirectory. |
/C <command> |
Esegue il comando specificato in ogni file. Le stringhe di comando devono essere racchiuse tra virgolette doppie. Il comando predefinito è "cmd /c echo @file". |
/D [{+\|-}][{<date> | <days>}] |
Seleziona i file con una data dell'ultima modifica entro l'intervallo di tempo specificato:
|
| /? | Visualizza il testo della Guida nella finestra cmd. |
Remarks
Il comando
forfiles /Sè simile adir /S.È possibile utilizzare le variabili seguenti nella stringa di comando, come specificato dall'opzione della riga di comando /C :
Variable Description @FILE File name. @FNAME Nome file senza estensione. @EXT Estensione del nome file. @PATH Percorso completo del file. @RELPATH Percorso relativo del file. @ISDIR Restituisce TRUE se un tipo di file è una directory. In caso contrario, questa variabile restituisce FALSE. @FSIZE Dimensioni del file, in byte. @FDATE Data ultima modifica nel file. @FTIME Timestamp dell'ultima modifica nel file. Il comando forfiles consente di eseguire un comando o di passare argomenti a più file. Ad esempio, è possibile eseguire il comando type su tutti i file in un albero con l'estensione del nome file .txt. In alternativa, è possibile eseguire ogni file batch (*.bat) nell'unità C, con il nome del file Myinput.txt come primo argomento.
Questo comando può:
Selezionare i file in base a una data assoluta o a una data relativa utilizzando il parametro /d .
Creare un albero di archivi di file usando variabili come @FSIZE e @FDATE.
Differenziare i file dalle directory usando la variabile @ISDIR.
Includere caratteri speciali nella riga di comando utilizzando il codice esadecimale per il carattere, in formato 0xHH (ad esempio, 0x09 per una tabulazione).
Questo comando funziona implementando il flag
recurse subdirectoriessugli strumenti progettati per elaborare solo un singolo file.
Examples
Per elencare tutti i file batch nell'unità C, digitare:
forfiles /P c:\ /S /M *.bat /C "cmd /c echo @file is a batch file"
Per elencare tutte le directory nell'unità C, digitare:
forfiles /P c:\ /S /M * /C "cmd /c if @isdir==TRUE echo @file is a directory"
Per elencare tutti i file nella directory corrente che hanno almeno un anno di età, digitare:
forfiles /S /M *.* /D -365 /C "cmd /c echo @file is at least one year old."
Per visualizzare il file di testo è obsoleto per ciascuno dei file nella directory corrente che sono precedenti al 1° gennaio 2007, digitare:
forfiles /S /M *.* /D -01/01/2007 /C "cmd /c echo @file is outdated."
Per elencare le estensioni di file di tutti i file nella directory corrente in formato colonna e aggiungere una scheda prima dell'estensione, digitare:
forfiles /S /M *.* /C "cmd /c echo The extension of @file is 0x09@ext"