Powershell - Test-Path всегда возвращает false, даже если файл существует - PullRequest
1 голос
/ 03 августа 2020

В следующем коде Test-Path всегда возвращает false, даже если файл существует. Я думал, что это специальный символ в переменной, но для этого я использую фигурные скобки. Тем не менее это не работает. Может кто поможет ?? Большое спасибо !!!

(Get-ChildItem -Path $OriginalRootDir -Recurse -File).FullName |
ForEach-Object {
    ${In} = "'" + $_ + "'"
    ${Out} = ${In} -replace "Original", "Converted"

    if (-not (Test-Path -Path ${Out} -PathType Leaf))
    {
        #It always get in here even though the $Out does exist
    }
}

1 Ответ

0 голосов
/ 03 августа 2020
(Get-ChildItem -Path $OriginalRootDir -Recurse -File).FullName |
ForEach-Object {
    ${In}=$_
    ${Out} = ${In} -replace "Original", "Converted"

    if (-not (Test-Path -Path ${Out} -PathType Leaf))
    {
      echo 'not found'
    } else {
      echo 'found'
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...