将本地文件从 Mac 复制到终端中的 ssh 会话 [关闭]
Posted
技术标签:
【中文标题】将本地文件从 Mac 复制到终端中的 ssh 会话 [关闭]【英文标题】:Copying a local file from Mac to an ssh session in terminal [closed] 【发布时间】:2017-01-20 07:56:19 【问题描述】:我是使用 bash 命令的新手,遇到了一些麻烦。我正在 ssh 进入一个包含我的一些工作文件的 linux 盒子。我的 Mac 上有一个本地文件,需要将其复制到服务器上。
以下是我到目前为止所经历的步骤: 1) ssh usrname@orgname.edu 2) 输入密码 3) 密码 4) 工作目录:home/usrname
在这之后我被困住了。我的 Mac 文档中有一个本地文件夹。我想将它复制到我通过 ssh 连接到的服务器上的工作目录中。
感谢您的帮助。谢谢
【问题讨论】:
改用scp
。
这不是编程问题。 SuperUser.com 是解决技术支持问题的更好地方。
【参考方案1】:
当您通过 ssh 连接到远程机器时,就好像您正坐在另一台机器前面并在其中执行命令。当您处于该状态时,您无法将文件复制到(或从)它。相反,您必须使用不同的工具scp
,它也属于ssh
系列,实际上在幕后调用ssh
。这是您将本地目录复制到远程计算机的方式:
scp -rp /path/to/local/dir usrname@orgname.edu:/path/to/remote/dir
我使用-r
模式(代表递归)递归地复制目录。另请参阅manual of scp 了解更多详情
【讨论】:
【参考方案2】:为此,您需要使用 sftp
而不是 ssh
。请尝试以下操作:
sftp usrname@orgname.edu
输入密码
cd <directory where you want to transfer the file>
put <name of file you want to transfer>
您还可以在某些命令前添加“l”以表明您希望在本地执行此操作。即ls
将显示远程服务器上的文件,lls
将显示本地计算机上的文件。
编辑:
你会想要确保你要么
一个。在开始 sftp 进程之前导航到包含您要传输的文件的文件夹。
b.在 sftp 会话中使用 lcd
和 lls
导航到包含您要传输的文件的本地文件夹。
如 cmets 中所述,使用要传输的文件的完整路径是行不通的。
【讨论】:
当我将文件的完整路径放在要传输的本地计算机上时,我收到一条消息说没有这样的文件或目录 好点。我刚刚尝试过,似乎使用完整路径不起作用。你会想要使用'lcd'和'lls'来确保你在正确的文件夹中。我将更改我的答案以包括在内。谢谢ixbo45。【参考方案3】:从您的 Linux 命令提示符:scp -C -r username@remote.host:/path/to/remote/directory/ target/directory
【讨论】:
scp pathToFileOnMBP 用户名@linuxHost:pathToFileOnLinux以上是关于将本地文件从 Mac 复制到终端中的 ssh 会话 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
linux 如何从远程终端下载文件到本地磁盘? 我的系统也是linux的,想从远程终端(ssh.)上复制文件到本地
如何使用 SSH 和 MAC OS X 终端跨计算机复制文件 [关闭]