powershell - tutorial - Crear una carpeta si no existe-"El elemento ya existe"
powershell tutorial (3)
Con New-Item puede agregar el parámetro Force
New-Item -Force -ItemType directory -Path foo
O el parámetro ErrorAction
New-Item -ErrorAction Ignore -ItemType directory -Path foo
Esta pregunta ya tiene una respuesta aquí:
- Crear directorio si no existe 10 respuestas
Intento crear una carpeta con PowerShell si no existe, así que lo hice:
$DOCDIR = [Environment]::GetFolderPath("MyDocuments")
$TARGETDIR = "$DOCDIR/MatchedLog"
if(!(Test-Path -Path MatchedLog )){
New-Item -ItemType directory -Path $DOCDIR/MatchedLog
}
Esto me está dando el error de que la carpeta ya existe, lo que hace, pero no debería intentar crearla.
No estoy seguro de lo que está mal aquí
Nuevo elemento: el elemento con el nombre especificado C: / Users / l / Documents / MatchedLog ya existe. En C: / Users / l / Documents / Powershell / email.ps1: 4 char: 13 + New-Item <<<< -ItemType directory -Path $ DOCDIR / MatchedLog + CategoryInfo: ResourceExists: (C: / Users / l. ... ents / MatchedLog: String) [New-Item], IOException + FullyQualifiedErrorId: DirectoryExist, Microsoft.PowerShell.Commands.NewItemCommand`
Ni siquiera estaba concentrado, así es cómo hacerlo
$DOCDIR = [Environment]::GetFolderPath("MyDocuments")
$TARGETDIR = ''$DOCDIR/MatchedLog''
if(!(Test-Path -Path $TARGETDIR )){
New-Item -ItemType directory -Path $TARGETDIR
}
Sintaxis alternativa usando el operador -Not
y dependiendo de su preferencia para la legibilidad:
if( -Not (Test-Path -Path $TARGETDIR ) )
{
New-Item -ItemType directory -Path $TARGETDIR
}