PowerShell Crea cartella se non esiste

Powershell Crea Cartella Se Non Esiste



Hai un sacco di cartelle e vuoi crearne una nuova, ma non sai se quella cartella esiste già o no? Questo processo può richiedere molto tempo perché prima cercherai quella cartella, che esista o meno, quindi la creerai se non esiste.

Sorprendentemente, PowerShell può farti risparmiare molto tempo e fatica se conosci un po' di scripting.







Aspettare! Non è necessario imparare l'intera faccenda dello scripting per quell'attività. Perché ho fornito cinque metodi per creare una cartella se non esiste con una spiegazione adeguata di ogni comando utilizzato al suo interno.



Schema rapido:



Prima di passare agli script impariamo come verificare se una cartella esiste o meno e poi un metodo per creare una cartella in PowerShell.





Controlla se la cartella esiste già in PowerShell

IL Percorso di prova Il comando viene utilizzato per verificare se la cartella esiste già in PowerShell. Per verificare se la cartella esiste, il percorso della cartella viene specificato nel comando Test-Path, utilizzando il file -Sentiero parametro. In cambio, viene restituito il comando Test-Path VERO valore se esiste, e Falso se non esiste.

Ad esempio, controlliamo se la cartella specificata esiste o meno utilizzando il file Percorso di prova comando:



Percorso di prova -Sentiero 'C:\Documento'

Per verificare l'esistenza della cartella, specificare innanzitutto il file Percorso di prova comando e fornire il percorso della cartella utilizzando il file -Sentiero parametro:

L'uscita è Falso perché la cartella specificata non esiste.

Crea una nuova cartella in PowerShell

IL Nuovo oggetto Il comando crea una nuova cartella in PowerShell. Per creare una directory, fornire il percorso della directory al comando New-Item utilizzando il file -Sentiero parametro. Soprattutto, usa il file -Tipo di elemento parametro per creare una cartella e specificare il file Direttorio valore. Se non specifichi il parametro -ItemType e il valore Directory, il comando New-Item creerà un file anziché una cartella.

Ad esempio, creiamo una nuova cartella utilizzando il file Nuovo oggetto comando in PowerShell:

Nuovo oggetto -Sentiero 'C:\Documento' -Tipo di elemento Direttorio

Per creare una nuova cartella:

  • Per prima cosa, usa il file Nuovo oggetto comando e specificare il percorso della cartella da creare nel file -Sentiero parametro.
  • Successivamente, specifica il Direttorio valore al -Tipo di elemento parametro per dire alla console di creare una cartella invece di un file:

La nuova cartella è stata creata e la sua ora di creazione è visibile anche nell'output sopra.

Crea una cartella se non esiste in PowerShell

Dalla query, si può osservare che sarà un se altro scenario, in cui si afferma che se la cartella non esiste, creare una nuova cartella. Esistono cinque metodi per creare una cartella se non esiste in PowerShell e ogni metodo prevede lo scenario della condizione if-else.

Soluzione rapida

Ecco la soluzione rapida per creare una cartella se non esiste nella console di PowerShell:

Se ( -non ( Percorso di prova -Sentiero 'C:\NuovaCartella' ) ) { Nuovo oggetto -Sentiero 'C:\NuovaCartella' -Tipo di elemento Direttorio }

La directory specificata non esiste e quindi viene creata.

1. Crea una cartella se non esiste in PowerShell utilizzando Test-Path

IL Percorso di prova Il comando controlla l'esistenza della cartella e dice alla console se esiste o meno. I comandi Test-Path e New-Item insieme a Se altro condizione aiuta a creare una cartella se non esiste in PowerShell.

Ad esempio, osserviamo questo codice per creare una cartella se non esiste utilizzando il comando Test-Path:

Se ( Percorso di prova -Sentiero 'C:\NuovaCartella' ) {

Write-Host 'La cartella specificata esiste già'
}
altro
{
Nuovo oggetto -Sentiero 'C:\NuovaCartella' -Tipo di elemento Direttorio
}

Per creare una cartella utilizzando il file Percorso di prova E Nuovo oggetto comando:

  • Innanzitutto, abbiamo creato un file Se condizione, dove abbiamo utilizzato il file Percorso di prova comando e specificato la cartella utilizzando il comando -Sentiero per verificare l'esistenza delle cartelle.
  • Se la cartella specificata esiste, il messaggio verrà visualizzato utilizzando il file Write-Host comando che indica che la cartella esiste già e lo script terminerà qui.
  • Altrimenti il ​​programma passerà alla sezione successiva.
  • Nella condizione else, abbiamo utilizzato il file Nuovo oggetto comando e specificato il percorso della cartella da creare.
  • Per spiegare più chiaramente la console che crea una cartella, abbiamo utilizzato il file -Tipo di elemento proprietà e specificato il valore Direttorio :

Produzione: La cartella non esiste e quindi viene creata una nuova cartella nella directory specificata.

2. Crea una cartella se non esiste in PowerShell utilizzando Get-Item

IL Ottieni oggetto Il comando ottiene il file o la cartella dalla posizione specificata. Il comando Get-Item può anche verificare l'esistenza della cartella utilizzando la condizione if.

Ecco come puoi creare una cartella se non esiste in PowerShell utilizzando il comando Get-Item:

Se ( Ottieni oggetto -Sentiero 'C:\Documento' -Azione errore Ignorare ) {
Write-Host 'Il file esiste già'
}
altro {
Nuovo oggetto -Prolisso 'C:\Documento' -Tipo di elemento Direttorio
}

Per creare una cartella se non esiste utilizzare il file Ottieni oggetto comando:

  • Innanzitutto, crea un file Se condizione, dove utilizzare il Ottieni oggetto comando e specificare il percorso della cartella utilizzando il comando -Sentiero parametro per verificare se esiste già o meno.
  • Inoltre, utilizzare il -Azione errore parametro e specificare il Ignorare valore per ignorare gli errori che possono verificarsi durante l'esecuzione del codice.
  • Se la cartella esiste già, la console visualizzerà il messaggio che dice che la cartella esiste già utilizzando il file Write-Host comando.
  • Se la cartella non esiste il programma passerà alla condizione else in cui verrà creata la nuova cartella.
  • Nella condizione else, utilizzare il file Nuovo oggetto comando, specificare il percorso della cartella da creare e utilizzare il file -Tipo di elemento parametro avente il valore Direttorio ad esso specificato.
  • Accanto ad esso, specificare il -verboso parametro per ottenere un output più dettagliato:

Lo screenshot conferma che la cartella specificata non esiste e quindi è stata creata una nuova cartella.

3. Crea una cartella se non esiste in PowerShell utilizzando Get-ChildItem

IL Get-ChildItem Il comando ottiene i file o le cartelle dalla directory specificata. Può essere utilizzato con il comando New-Item e la condizione If-else per creare una cartella se non esiste in PowerShell.

Ecco il codice di esempio per creare una cartella se non esiste con l'aiuto del comando Get-ChildItem:

Se ( Get-ChildItem -Sentiero 'C:\Documento' -Azione errore Ignorare )
{
Write-Host 'La cartella esiste già'
}
altro
{
Nuovo oggetto 'C:\Documento' -Tipo di elemento Direttorio
}

Nota: La spiegazione del codice per lo snippet sopra è la stessa del file Ottieni oggetto comando ad eccezione di Get-ChildItem comando:

La cartella specificata non esiste e quindi è stata creata una nuova cartella.

4. Crea una cartella se non esiste in PowerShell utilizzando Test-Path e Mkdir

IL mkdir Il comando crea una cartella in PowerShell. Ha uno pseudonimo md , che funziona allo stesso modo del comando Mkdir. Questo comando può anche creare una cartella se non esiste con la combinazione del comando Test-Path e della condizione if-else.

Ecco l'esempio di creazione di una cartella se non esiste in PowerShell utilizzando il comando md e Test-Path:

Se ( Percorso di prova -Sentiero 'C:\Cartella' ) {

Write-Host 'La cartella esiste già'
}
altro
{
md 'C:\Cartella'
}

Per creare una cartella se non esiste:

  • Innanzitutto, crea il file Se condizione e specificare la Percorso di prova comando insieme alla cartella per verificare se esiste o meno.
  • Se la cartella esiste, termina qui il codice e stampa la cartella già esistente.
  • Altrimenti, crea una cartella utilizzando il file md comando specificando il nome e il percorso della cartella:

L'output mostra che la cartella non esiste e quindi è stata creata una nuova cartella.

5. Crea una cartella se non esiste in PowerShell utilizzando [System.IO.File]::Exists()

IL [System.IO.File]::Esiste() il comando controlla se la cartella specificata esiste o meno. Può creare la cartella in PowerShell se non esiste con la combinazione della condizione if-else e del comando New-Item.

Ecco come è possibile creare una cartella se non esiste in PowerShell utilizzando il comando [System.IO.File]::Exists():

Se ( [ System.IO.Directory ] ::Esiste ( 'C:\Documenti' ) )
{
Write-Host 'La cartella esiste già'
}
altro
{
Nuovo oggetto 'C:\Documenti' -Tipo di elemento Direttorio
}

Nel codice sopra:

  • Innanzitutto, crea un file Se condizione e specificare la [System.IO.Directory]::Esiste (percorso cartella) comando al suo interno per verificare se quella cartella esiste o meno.
  • Se la directory viene trovata, la console stamperà che la cartella esiste.
  • Altrimenti, creerà quella cartella utilizzando il file Nuovo oggetto comando:

La cartella specificata non esiste e quindi viene creata una nuova cartella utilizzando il comando New-Item.

Suggerimento bonus: crea una cartella se esiste già in PowerShell

IL -Forza parametro con il Nuovo oggetto Il comando viene utilizzato per sovrascrivere una cartella esistente in PowerShell. Il parametro -Force sovrascrive un elemento esistente nel percorso specificato in PowerShell. Per creare una cartella se esiste già, aggiungi semplicemente il parametro -Force insieme al comando New-Item.

Ecco come puoi sovrascrivere una cartella esistente:

Nuovo oggetto -Sentiero 'C:\Documento' -Tipo di elemento Direttorio -Forza

Per creare una cartella se esiste già in PowerShell:

  • Innanzitutto, utilizza il comando New-Item e specifica la cartella da creare utilizzando il parametro -path.
  • Quindi, utilizza il parametro -ItemType e specifica il valore per indicare alla console di creare una cartella.
  • Infine, per sovrascrivere una cartella esistente utilizzare il parametro -Force:

La cartella è stata sovrascritta correttamente nel percorso specificato.

Conclusione

Per creare una cartella se non esiste, controlla innanzitutto l'esistenza della cartella utilizzando il file Percorso di prova comando. Quindi, utilizzare il Nuovo oggetto comando per creare una cartella, se non esiste. Per eseguire questa operazione in una volta sola è necessario utilizzare il file se altro condizione insieme al comando Test-Path e al comando New-Item, che ho già dimostrato nel Metodo 1 in questo articolo.