È sempre bene conoscere qualche riga di comando di magia, come a volte è più facile per i comandi di processo in quel modo.
In questa guida viene illustrato il Forfiles di comando in Windows Vista e Windows 7 (Aggiornamento: disponibile Anche nelle versioni più recenti di Windows).
Forfiles grado di elaborare i file in base a nomi, le estensioni di file e di età. Ad esempio è possibile trovare tutti i documenti in una directory che sono di età superiore a 20 giorni, o tutti i documenti in c:documents che sono stati modificati dopo una data specifica.
Il forfiles comando può essere accoppiato con opzioni di elaborazione per eliminare i file, o per creare un elenco di tutti i file che soddisfano i filtri. Consente di dare un’occhiata più da vicino la forfiles comando.
FORFILES [/P pathname] [/M searchmask] [/S] [/C comando] [/D [+ | -] {gg/MM/aaaa | aaaa}]
Descrizione: consente di selezionare un file (o i file) e l’esecuzione di un comando sul file. Questo è utile per processi batch.
Elenco Di Parametri:
- /P percorso Indica il percorso per avviare la ricerca. La cartella predefinita è la directory di lavoro corrente (.).
- /M searchmask Ricerche di file in base a una searchmask. L’impostazione predefinita searchmask”*’ .
- /S Indica forfiles per ricorsione nelle sottodirectory. Come “DIR /S”.
- Comando /C Indica il comando da eseguire per ogni file. Stringhe di comando deve essere racchiuso tra doppi apici. Il comando di impostazione predefinita è “cmd /c echo @file”.
Le seguenti variabili possono essere utilizzati nella stringa di comando:
- @file – restituisce il nome del file.
- @fname – restituisce il nome del file senza estensione.
- @ext – restituisce solo l’estensione del file.
- @path – restituisce il percorso completo del file.
- @relpath – restituisce il percorso relativo del file.
- @isdir – restituisce “TRUE” se un tipo di file è una directory, e “FALSE” per i file.
- @fsize – restituisce la dimensione del file in byte.
- @fdate – restituisce la data di ultima modifica del file.
- @ftime – restituisce l’ora dell’ultima modifica del file.
Includere caratteri speciali nella riga di comando, utilizzare il codice esadecimale del carattere in 0xHH formato (ex. 0x09 per scheda). Interno CMD.exe i comandi devono essere precedute da “cmd /c”.
/D data Seleziona i file con la data dell’ultima modifica maggiore o uguale a ( + ) o meno di o uguale a (-), la data specificata utilizzando il “dd/MM/yyyy” formato; o seleziona file con la data dell’ultima modifica maggiore o uguale a (+) alla data corrente più “dd” giorni, o meno di o uguale a (-) la data corrente meno “dd” giorni. Un valido “dd” numero di giorni che può essere qualsiasi numero compreso nell’intervallo 0 – 32768. “+” viene preso come segno di default se non specificato.
/? Visualizza questo messaggio di aiuto. Questo file può essere aperto inserendo il comando forfiles /? in un prompt dei comandi. Premere il tasto Windows-R, digitare cmd e premere invio per avviare la riga di comando in Windows.
Il comando forfiles /P c:test /M .doc /S /D -10 ricerca directory c:test e tutte le sue sottodirectory per i file con il .estensione doc che sono più vecchi di 10 giorni.
Il parametro /p seguita da una directory definisce la directory di partenza, /s include sottodirectory nella ricerca /m filtri per file e cartelle in base alla stringa inserita e /D definisce la data o un intervallo di tempo.
Il comando /C viene utilizzato per elaborare i file che si trovano più. Si può per esempio essere utilizzato per eseguire il comando seguente: /C “cmd /c echo @fname” > test.txt eco i nomi di ogni file trovato e salvare i risultati in text.txt nella stessa directory.
Il comando completo quindi simile a questo forfiles /P c:test /M .doc /S /D -10 /C “cmd /c echo @fname” > test.txt
Un’altra possibilità è di eliminare i file che corrispondono alla ricerca, questo è fatto con il comando “cmd /c del @File
È tuttavia consigliabile verificare l’output prima, prima di emettere il comando elimina per assicurarsi che solo il diritto di eliminare i file. Gli utenti esperti possono creare un file batch per eseguire forfiles regolarmente.