Как сопоставить имя папки с помощью PowerShell? - PullRequest
0 голосов
/ 13 февраля 2020

Я хочу сопоставить папку для загрузки и извлечения папки. Это способ, которым мне нужно загрузить папку.

DownloadF.exe --net 10.0.0.1 --user XX --id 00 --ver A00X-F1A >> result.txt

У меня есть 26 версий для сопоставления, которые

A00X-F1A ... A00X-F1Z (the last character is A - Z)

Если папка result.txt содержит эту строку "доступна ». Это означает, что версия верна, затем прекратите зацикливание или проверку другой версии.

Я должен проверить запуск версии с A00X-F1Z, A00X-F1Y, A00X-F1X, ... A00X-F1A. Любой может дать мне идею, пожалуйста.

##Updated
$Version = "A00X-F1"
$List_Ver = 90..65 | ForEach-Object{"$Version" + [char]$_}
$n = 0
foreach ($list in $List_Ver){    
    while ($Result -notcontains "Folder Available")
    {
        $n++
        & DownloadF.exe --net 10.0.0.1 --user XX --id 00 --ver $list >> $list.txt"
        Start-Sleep -s 3
        $Result = Get-Content -path .\$list.txt
    }
}

1 Ответ

1 голос
/ 14 февраля 2020

Это то, что я протестировал с тем, что, как я понял, вы ищете,

Пример result.txt

A00X-F1Z
A00X-F1Y
A00X-F1X
A00X-F1W
A00X-F1V
A00X-F1U
A00X-F1T
A00X-F1S
A00X-F1R
A00X-F1Q

Код для работы с

$Version = "A00X-F1"
$List_Ver = 90..65 | ForEach-Object{"$Version" + [char]$_}
$result = Get-Content C:\temp\result.txt 
$string = "Folder Not Available"
foreach($list in $List_Ver) {
DownloadF.exe --net 10.0.0.1 --user XX --id 00 --ver $list >> result.txt
  if ($result -like $string ) {
    $n = 0
    while ($result -like $string)
    {
      $n++

     Write-Host "Not Found"
     Break
}
  }
  else {
     Write-Host "Found"
     Break
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...