Terminal 如何使用scp将文件从服务器复制到客户端?
如何将文件从远程访问的计算机传输回当前所在的计算机 有人能帮我吗 这是我到目前为止知道的语法Terminal 如何使用scp将文件从服务器复制到客户端?,terminal,command-line-arguments,scp,Terminal,Command Line Arguments,Scp,如何将文件从远程访问的计算机传输回当前所在的计算机 有人能帮我吗 这是我到目前为止知道的语法 scp(文件名)(我不知道在这里放什么):(在我的电脑上的位置)如果你的电脑可以上网,这个黑客程序应该可以工作 scp (filename) `echo $SSH_CLIENT | awk '{print $1}'`:(location on my computer) 更简单的方法(这将始终有效)是从本地计算机上的新窗口执行scp 远程计算机与您通常通过ssh连接到的地址相同 例如,如果文件位于名为r
scp(文件名)(我不知道在这里放什么):(在我的电脑上的位置)如果你的电脑可以上网,这个黑客程序应该可以工作
scp (filename) `echo $SSH_CLIENT | awk '{print $1}'`:(location on my computer)
更简单的方法(这将始终有效)是从本地计算机上的新窗口执行scp
远程计算机
与您通常通过ssh连接到的地址相同
例如,如果文件位于名为remotecomputer.com
的远程计算机上,位于主目录名为important
的子目录中,并且文件名为test.txt
,则可以在本地计算机上发出此命令,将其复制到本地计算机上的当前目录
scp remotecomputer.com:important/test.txt .
从,man scp
本地上的scp文件user@host.name:/path/to/file
如果您添加一个
-r
,它可以完成整个dir。scp实际上比乍一看更容易使用
scp
或
可以是本地或远程
远程文件的格式为user@host:路径在远程上
本地文件只是简单的路径:/path/to/my/file.txt
如果您是手动执行此操作,您可能会发现,在登录到远程主机之前,通过从本地主机运行以下操作,不将文件复制回您的办公室计算机会更容易:
scpuser@remotehost:/path/to/my/file/on/remote.txt/local/path/local.txt
如前所述,如果您需要复制目录,您可以为scp提供-r
选项
当登录到远程服务器时,复制基本上是相同的,不过您需要在本地计算机上运行ssh,这可能需要在本地路由器上进行端口转发。我倾向于将笔记本电脑上的scp
调用到服务器上更容易,而不是相反。使用pem文件(pem文件需要位于根目录下)
$scp-i@:/path/to/file
有证书
$ scp <file_on_local> <user>@<remotehost>:/path/to/file
$scp@:/path/to/file
但我很难找到路径。出于某种原因,它根本不起作用。我如何找到放入气泡中的内容(本地计算机)?问题是我不确定如何进行路径。我试过像/home/usernamefolder/(myfile)这样的东西,但由于某种原因,它找不到这个该死的文件。执行路径时从何处开始?@Mechy如果您使用公钥身份验证(无密码登录)登录到远程服务器,您可以使用与正常bash
会话相同的方式完成选项卡。我发现这非常有用,因为这意味着我不必创建一个ssh
会话来复制路径。当我做scp(主机):(我在这里放了空格)/地址,这就是问题所在。
$ scp -i <pem.pem> <file_on_local> <user>@<remotehost>:/path/to/file
$ scp <file_on_local> <user>@<remotehost>:/path/to/file