#powershell #sftp #winscp
#powershell #sftp #winscp
Вопрос:
У меня проблема с модулем WinSCP в PowerShell.
Я использую этот модуль для передачи файлов между двумя серверами.
Мне нужно проверить содержимое файла на удаленном сервере, который содержит имена файлов, которые я должен загрузить.
В модуле WinSCP нет командлета like Get-Content
. Есть ли какой-либо способ добиться этого без загрузки текстового файла?
[System.Array]$remoteFiles =
Get-WinSCPChildItem -WinSCPSession $session -Path $remotePath -File:$true -Recurse -ErrorAction Stop |
Where-Object {$_.Name -like $FileMask}
$remoteFiles | Get-Content
Комментарии:
1. Поскольку вам, очевидно, все равно нужен контент, почему вы не хотите загружать файл?
2. @AnsgarWiechers Я не хотел менять структуру папок. Но на этот раз, похоже, я должен…
Ответ №1:
Get-Content
В модуле WinSCP PowerShell нет эквивалента.
Вы должны загрузить файл (во временное расположение) и прочитать загруженный файл локально.
Хотя обратите внимание, что, даже если бы существовал эквивалент Get-Content
, он все равно «загрузил» бы файл, хотя и в память, а не в локальный файл.