In questo modo, puoi pre-controllare l'esistenza del file e evitare il "file non trovato"Errore in PowerShell. PowerShell fornisce quattro modi diversi per verificare se il percorso esiste o meno. Questi metodi includono Percorso di prova, Get-childitem, Get-item, E Sistema.Io.Il file esiste metodo.
In questo articolo, tratteremo i quattro diversi metodi utilizzati in PowerShell per verificare se esiste un file. I risultati dell'articolo sono:
Metodo 1: come controllare l'esistenza di un file utilizzando il cmdlet PowerShell "Test-Path"?
La presenza di qualsiasi file può essere controllata tramite l'uso del "Percorso di prova"Cmdlet. Questo comando può essere utilizzato usando un percorso assoluto (percorso completo del file) o a percorso relativo (percorso del file secondo l'attuale directory di lavoro). Va notato che il Percorso di prova restituisce l'output in VERO O Falso soltanto.
Cmdlet test-percorso con percorso relativo
Il comando seguente verrà eseguito per controllare il "file.rtf"All'interno dell'attuale directory di lavoro. Il parametro "Foglia di pathype"Qui si riferisce al file piuttosto che al cartella/directory.
File Test-Path ".RTF "-PathType Leaf
L'output restituito è falso, che afferma che il file non esiste nella presente directory.
Nel seguente Percorso di prova comando stiamo usando il jolly (*) con estensione del file (.RTF) Per verificare se il ".rtf"Esistono file o no.
Percorso test "*.RTF "-PathType Leaf
Si può notare che i file con il ".rtf"L'estensione è presente nel Test directory.
Cmdlet test-percorso con percorso assoluto
Se ti trovi nella directory della radice o altrove, l'uso del percorso assoluto può essere molto utile. Usa il seguente (i.e. Test -path -path "") comando di scoprire se il ".rtf"I file esistono in Test cartella o no.
Test -Path -Path "C: \ Users \ PowerShell \ Test \*.RTF "-PathType Leaf
È mostrato nel frammento di un po 'di testa che il ".I file RTF ”sono disponibili sul percorso particolare.
Metodo 2: come verificare se esiste un file utilizzando PowerShell "Get-Childitem" Cmdlet?
Powershell Get-childitem può anche essere utilizzato per verificare la disponibilità di un determinato file / i. Nell'esempio seguente vedremo la dimostrazione pratica del Get-childitem cmdlet. Supponiamo di voler sapere sulla presenza del test.TXT file. IL Get-childitem Il comando che viene utilizzato è il seguente.
Get -Childitem -Path C: \ Users \ PowerShell \ Test \ Test.TXT
Come puoi osservare dal messaggio sopra che il percorso particolare non contiene il test.TXT file.
Oltre a questo, possiamo anche usare il carta jolly (*) con l'estensione del file da verificare se esiste un file con l'estensione. Ecco il comando per controllare l'esistenza di file con ".TXT"Estensione.
Get -Childitem -Path C: \ Users \ PowerShell \ Test \*.TXT
Secondo lo screenshot di output sopra, ce ne sono due "testo"File disponibili nella directory di test.
Metodo 3: come verificare se esiste un file utilizzando il cmdlet PowerShell "Get-Etim"?
PowerShell supporta il comando get-elem per il controllo dei file nella directory. L'esempio seguente dimostrerà l'implementazione pratica del Get-item comando. Ad esempio, la disponibilità del file.jpg verrà controllato con il seguente comando.
Get-Item C: \ Users \ PowerShell \ Test \ File.jpg
L'output mostra che non esiste un file esistente con il nome "file.jpg". Ma il jolly può essere usato se non ricordi il nome esatto del file.
Get-Item C: \ Users \ PowerShell \ Test \*.jpg
Si può notare nello screenshot sopra attaccato, che ce ne sono due Jpg file nella cartella di prova
Metodo 4: come controllare il file tramite "Sistema.Io.File :: esiste "cmdlet?
[Sistema.Io.Il file esiste è anche uno dei metodi utilizzati in PowerShell per gestire varie operazioni (creazione, eliminazione, copia, spostamento) sui file. Il tipo di ritorno di questo metodo è booleano (vero/falso).
Nel comando di esempio, il sistema.Io.Il metodo del file viene applicato a un file denominato "file5.doc"Per verificare la sua esistenza usando il percorso assoluto del file.
[Sistema.Io.File] :: esiste ("C: \ Users \ PowerShell \ Test \ File5.Doc ")
Come potete vedere, file5.doc esiste nella cartella particolare.
Nota:
Come altri metodi come Test-Path, Get-Childitem e Get-Etim, The Wildcard (*) non funziona in [Sistema.Io.Il file esiste, L'esempio è riportato di seguito per riferimento.
[Sistema.Io.File] :: esiste ("C: \ Users \ PowerShell \ Test \*.Doc ")
Come già sappiamo che esiste un file5.doc nella cartella di prova ma il Sistema.Io.Il file esiste ignorato il jolly e restituito l'output come falso, il che significa che non c'è ".doc"File nella cartella particolare.
Grande! Hai imparato a verificare se il file esiste o no.
Conclusione
PowerShell può essere utilizzato per verificare se il file del percorso particolare esiste o no. A tale scopo, PowerShell fornisce quattro metodi integrati, inclusi Percorso di prova, Get-childitem, Get-item, E [Sistema.Io.Il file esiste Per verificare la disponibilità del file. In questo articolo, tutti questi metodi vengono discussi e spiegati brevemente per verificare l'esistenza del file.