Al lavoro noi IT avremmo l'obbligo di utilizzare una cartella particolare per contenere i file d'installazione e tutte le configurazioni per preparare un computer. Purtroppo, troppo spesso, questo non accade così tutto viene spostato in varie cartelle diverse nel disco fisso e io quando devo cercare qualcosa mi trovo in seria difficoltà.
Così ho voluto trovare uno script PowerShell, utilizzabile da remoto e senza collegarmi necessariamente al computer, che mi cercasse uno o più file, iniziando la ricerca da determinate cartelle, dove potrebbe essere quello che cerco, e se non trova nulla al loro interno prosegue a cercare nel resto dei dischi fissi presenti nel computer.
Possiamo avviare lo script in modalità normale e più "silenziosa".

Oppure usare l'opzione -verbose e visualizzare tutti i file trovati mostrando anche il progresso della ricerca.

Al termine si può copiare negli appunti tutti i percorsi trovati e poi incollarli in un file di testo.

Oltre all'opzione verbose è presente anche quella -FullSearch che serve per avviare subito un controllo completo del disco fisso, tranne le cartelle escluse. Anche se ha trovato il file cercato in una delle cartelle prioritarie, con questa opzione procede lo stesso a un controllo completo.

Tra le parti che possiamo modificare nello script abbiamo il $FileName dove indicare il nome del file cercato, oppure l'estensione *.pdf dei file, per esempio.
Dietro suggerimento di Zigul, che ringrazio, ho voluto aggiungere all'articolo anche lo script Cerca_con_inserimento_Nome_file.ps1 che rimane in attesa dell'inserimento del nome del file da cercare, accetta anche i caratteri jolly, come *, se si vuole trovare un certo tipo di file.
Nelle cartelle prioritarie si può indicare allo script di partire con il controllo da queste e se non vi trova niente di proseguire in tutte le altre, tranne quelle escluse dalla lista che viene subito dopo.
Nella lista delle esclusioni ho inserito alcune cartelle di sistema, che contengono tanti file, ma potete aggiungerne delle altre personalizzate come quelle del profilo di posta o del browser, così da avere meno file da controllare e una ricerca più veloce.

Visto che mi era stato fatto notare che in questo genere di script, con parametri diversi d'avvio, è bene che sia spiegato a cosa servono, allora, per questa volta, ho fatto inserire anche questo. Per maggiori spiegazioni potete, modificando il percorso dove si trova lo script, usare i comandi:
Get-Help d:\cerca.ps1Get-Help d:\cerca.ps1 -DetailedGet-Help d:\cerca.ps1 -Examples
