У меня проблемы с автоматическим заполнением ввода Read-Host в PowerShell

У меня есть скрипт, который читает файлы, извлекает строки и сохраняет их в файле CSV для дальнейших изменений.

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

  1. Читать файл
  2. Найти следующую доступную строку
  3. Сделайте строку входом Read-Host
  4. Затем пользователь будет использовать клавиши со стрелками для перемещения курсора и внесения изменений в строку
  5. Нажмите Enter, чтобы сохранить строку в новый файл

"_" в приведенном ниже примере желаемого состояния Read-Host мигает курсор, готовый к изменениям *

#> Line to change : server=servername.loc.corporation_

2 ответа2

0

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

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

$sourcefile = gc "file1.txt"
$newfile = "file2.txt"

foreach ($line in $sourcefile) {
     Read-Host "Edit this line -" $line | Out-File -Append $newfile
}
-1

[System.Окна.Формы.SendKeys]::SendWait("YourText") до того, как Read-Host поможет вам. Но это работает, только если окно консоли имеет фокус ...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .