要将文件从 Linux 终端推送到 Windows 系统,以下两个示例就可以正常工作。
scp /home/user.name/file.html user.name@local.ip.num:/C:/Users/user.name/test_folder/file.html
scp /home/user.name/file.html user.name@local.ip.num:"/C:/Users/user.name/test_folder/file.html"
Run Code Online (Sandbox Code Playgroud)
我需要在本地文件夹有空格并且无法更改名称的情况下执行此操作,例如/C:/Users/user.name/test folder/
以下所有操作均失败并显示消息scp: ambiguous target
scp /home/user.name/file.html user.name@local.ip.num:"/C:/Users/user.name/test folder/file.html"
scp /home/user.name/file.html user.name@local.ip.num:"/C:/Users/user.name/test\ folder/file.html"
scp /home/user.name/file.html user.name@local.ip.num:"'/C:/Users/user.name/test\ folder/file.html'"
scp /home/user.name/file.html user.name@local.ip.num:"/C:/Users/user.name/test\\ folder/file.html"
scp /home/user.name/file.html user.name@local.ip.num:"'/C:/Users/user.name/test\\ folder/file.html'"
scp /home/user.name/file.html user.name@local.ip.num:"/C:/Users/user.name/test\\\ folder/file.html"
scp /home/user.name/file.html user.name@local.ip.num:"'/C:/Users/user.name/test\\\ folder/file.html'"
Run Code Online (Sandbox Code Playgroud)
我该如何让它发挥作用?
在PowerShell的OpenSSH的网站有关于如何安装和使用OpenSSH很好的说明。
其中包括如何“配置默认的 ssh shell(可选)”
如果我选择使用 git-bash 而不是 powershell,-Value除了"/c"
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShellCommandOption -Value "/c" -PropertyType String -Force
Run Code Online (Sandbox Code Playgroud)
当我将默认 shell 设置为 git-bash 时,我得到一个空白屏幕。
我试过了"-c","-l -i"但没有一个工作,我仍然得到一个空白屏幕。
我可以从 PowerShell 运行以下命令来启动另一个 PowerShell 实例,更改窗口名称,然后运行ls命令并从新的 PowerShell 实例打开 Chrome 到特定网站。
start powershell `
"-noexit", `
"`$host.ui.RawUI.WindowTitle` = 'list files and goto SO'; `
ls ;`
Start-Process chrome.exe https://stackoverflow.com/"
Run Code Online (Sandbox Code Playgroud)
我如何在新的 Windows 终端 (wt) 中做同样的事情?
从 PowerShell 运行以下命令会打开 wt 到“Windows Powershell”配置文件并更改“Windows Powershell”选项卡的标题。
start wt '-p "Windows PowerShell" --title "list files and goto SO" '
Run Code Online (Sandbox Code Playgroud)
但是,我无法传入任何其他命令以在 Windows 终端“Windows Powershell”配置文件外壳中执行。
这是目前可能的吗?
我知道以下内容:https : //github.com/microsoft/terminal/pull/3495 https://docs.microsoft.com/en-us/windows/terminal/command-line-arguments?tabs=windows
powershell ×2
git-bash ×1
linux ×1
openssh ×1
scp ×1
ssh ×1
terminal ×1
windows ×1
windows-10 ×1