SCP с Windows сервера на Linux хост - PullRequest
0 голосов
/ 25 марта 2020

Я пытаюсь использовать PowerShell для переноса сжатого файла с общего диска на хост Linux. Однако, когда я использую

 scp \\path\to\compressed\file.zip user@linuxhost:/tmp

, весь путь копируется в каталог tmp на хосте Linux.

Любая идея, как я могу передать только имя файла .zip без полного путь к нему присоединен?

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

1 Ответ

0 голосов
/ 25 марта 2020

Используйте полный путь назначения:

scp \\path\to\compressed\file.zip user@linuxhost:/tmp/file.zip

Предполагая, что вы используете исходный путь к файлу в качестве пользовательского ввода, вы можете получить имя файла отдельно с помощью Split-Path:

function Copy-TmpItem
{
    param(
        [ValidateScript({Test-Path $_ -PathType Leaf})]
        [Parameter(Position = 0, Mandatory = $true)]
        [string]$Path
    )

    $filename = Split-Path $Path -Leaf

    scp "'$Path'" "user@linuxhost:'/tmp/$filename'"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...