Crear carpeta si no existe en PowerShell [3 formas]
Este tutorial explicará cómo crear una carpeta usando PowerShell si no existe en la ubicación indicada.
Uso de los cmdlets Test-Path y New-Item
Para crear una carpeta si no existe en PowerShell:
- Utilice el cmdlet
Test-Pathcon la instrucción if para comprobar la ruta. - Si la carpeta no existe, cree una nueva carpeta con el cmdlet
New-Item.
Alias de Get-ChildItem:
$path = "C:\test\New Folder"
if(Test-Path -Path $path){
Write-Host "Folder already exists."
}
else{
New-Item -Path $path -ItemType Directory
Write-Host "Folder created successfully."
}Producción :
Producción :
Directory: C:\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 22-12-2022 01:52 New Folder
Folder created successfully.
Primero, asignamos la ruta de la carpeta a la variable $path. Luego usamos Test-Path para determinar si la carpeta existe en esa ubicación. Comprueba si existen todos los elementos en la ruta.
Si la ruta existe, la declaración es True y se ejecuta el primer comando. Imprime el mensaje La carpeta ya existe.
Si la ruta no existe, New-Item crea un directorio Nueva carpeta en el directorio C:\test. Por último, el Write-Host genera el mensaje Carpeta creada correctamente.
New-Item es un cmdlet que se utiliza para crear un nuevo elemento. En este ejemplo, creamos una nueva carpeta con la ayuda del cmdlet New-Item.
Usando el método Directory.Exists()
Para comprobar si existe una carpeta en la ruta indicada, utilice el método [System.IO.Directory]::Exists().
Alias de Get-ChildItem:
$path = "C:\test\New Folder2"
if([System.IO.Directory]::Exists($path)){
Write-Host "Folder already exists."
}
else{
New-Item -Path $path -ItemType Directory
Write-Host "Folder created successfully."
}Producción :
Producción :
Directory: C:\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 22-12-2022 01:55 New Folder2
Folder created successfully.El método [System.IO.Directory]::Exists() de la clase .NET se utiliza como prueba condicional en la declaración if. Se evalúa como True si la ruta existe y False si no existe. Si el valor de retorno es False, New-Item crea una nueva carpeta en la ruta especificada.
Uso de Get-Item con el cmdlet New-Item
Para crear una carpeta si no existe:
- Utilice
Get-Itempara comprobar la ruta. - Utilice
New-Itempara crear una carpeta.
Alias de Get-ChildItem:
$path = "C:\test\New Folder3"
if(Get-Item $path -ErrorAction Ignore){
Write-Host "Folder already exists."
}
else{
New-Item -Path $path -ItemType Directory
Write-Host "Folder created successfully."
}Producción :
Producción :
Directory: C:\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 22-12-2022 01:58 New Folder3
Folder created successfully.En el ejemplo anterior,
$pathcontiene el nombre de la carpeta y la ruta.Get-Itemcomprueba si la carpeta existe en la ruta.New-Itemcrea una nueva carpeta si no existe en la ubicación indicada.-ErrorAction Ignoreoculta la excepción generada porGet-Itemcuando no se encuentra la ruta.
Eso es todo. Ahora deberías saber cómo crear una carpeta si no existe en PowerShell. Si tiene alguna confusión, háganoslo saber en los comentarios.