我登录到 Windows 机器上。我正在使用 Putty 登录同一网络上的 Ubuntu 计算机。现在,我尝试将 .c 文件从 Ubuntu 计算机移动到 Windows 计算机,在那里编辑它,然后将其移回 Ubuntu 计算机,编译并运行它。
我仍然坚持获取 C 文件。
我正在运行这个命令...
sudo scp odroid:/home/odroid/test/test.c C\Users\MyUser\Downloads
我没有将文件移动到我的 Windows 机器...不知何故,我在我的 Ubuntu 机器的主目录中创建一个未扩展的文件。
我究竟做错了什么?
答案1
在类似的情况下,我使用了 WinSCP。它是一个 Windows SCP 客户端,允许您以图形方式浏览 Linux 文件系统,并在两台机器之间来回浏览 scp 文件。
可以在这里找到: http://winscp.net/eng/index.php
答案2
你正在以最困难的方式做到这一点,但你可以这样做:
- 获得精彩
pscp
程序。我根本不是 Windows 用户,所以我能告诉你的一切都放在pscp.exe
你的%path%
. - 在 Windows 计算机上,将目录更改为
C:\Users\MyUser\Downloads
- 在 Windows 计算机上:
pscp test.c odroid:test/
您可能需要输入 Ubuntu 密码。 - 在Ubuntu机器上,编译并测试。
你必须从 Linux 机器上“拉取”文件,因为微软人为地将计算机变成“服务器”和“客户端”(大概是为了给企业买家制造虚假的高价位),并且认为不适合放置 SSH 服务器任何事物。就此而言,您可能需要启动sshd
您的 Ubuntu 机器。
老实说,你最好在 Ubuntu 机器上进行文本编辑。首先,有一系列令人惊叹的各种类型的编辑器可供使用,从 NotePad 模仿器到成熟的 IDE。其次,在 Windows 和 Linux 之间来回移动文件时,您会遇到行尾字节问题。在某些时候,编译器将拒绝编译某些内容,或者您的 Windows 编辑器不会将单个换行符识别为行尾。
答案3
我不得不经常处理这个问题,我曾经教过一些学生需要在 Windows 机器上工作的课程。我将描述两种方法,您可以决定您最喜欢哪种。另外,警告:我不是 Windows 用户,我只是在他们需要使用 Unix 时为他们提供支持:)。
使用 WinSCP(http://winscp.net/eng/download.php)
WinSCP 只是一个 GUI,其工作方式与 PuTTY 类似,但您可以浏览远程服务器上的文件。我发现它相当可以接受,而且它是一个 GUI,因此您只需在本地 Windows 计算机和远程 Ubuntu Linux 计算机之间拖放文件/文件夹即可。
使用 Sublime Text 3 (https://www.sublimetext.com/3)以及 Sublime SFTP 插件(抱歉,您必须搜索这个)
(好吧,我基本上认可这个文本编辑器,但自从我的一位朋友向我展示它后,我发现它是我在最多情况。其他编辑可能会让你做这样的事情;请随时查看。相信每个人都有自己最喜欢的。)
ST是付费软件,可以试用,每隔几次你省钱就会不断要求你购买。您可以安全地永远忽略这一点,并且免费使用它不会花费您任何功能,但请注意这一点(如果您可以支持开发人员......)。 SFTP 插件也会提醒您购买它。
这就是我使用 ST3 和 SFTP 插件的方式(我假设您已经安装了两者)。
如果您要处理远程文件夹中的所有文件
- 打开ST3并选择文件->“打开文件夹”
- 如果您愿意,可以创建一个新文件夹。该文件夹将保存您需要使用的所有文件。否则,只需选择一个文件夹。
- 在左侧边栏中,右键单击文件夹名称或图标。选择SFTP/FTP ->“映射到远程”。
- ST3 将打开一个配置文件来设置您的连接。填写重要值 (
host
,user
,remote_path
)。remote_path
应该是您的本地目录在某种意义上将被“镜像”的目录。如果您希望每次保存时自动将文件复制到远程服务器,您也可以设置upload_on_save
为。true
- 保存文件并再次右键单击文件夹名称。这次,选择 SFTP/FTP ->“同步远程 -> 本地...”。警告:如果您选择的文件夹中有文件,这将覆盖它们。
- 当要求执行控制台中显示的操作时,选择“是”。
- 现在您的文件将显示在侧栏上。您可以在本地计算机上打开它们、编辑它们并保存它们。如果您没有设置该
upload_on_save
选项,您可以右键单击文件名或文件内的任意位置,然后选择 SFTP/FTP ->“同步本地 -> 远程...”将其复制回来。
如果您只想使用一个文件
通过 SFTP 插件在 Sublime Text 中编辑文件可能会更容易。这给您一种在本地使用它的感觉,但实际上,您的本地计算机上只存在它的缓存版本。 SFTP 插件的开发人员将此称为“服务器”工作流程(您可以在他们的页面上阅读相关信息)。基本上:
- 打开 ST3,文件 -> SFTP/FTP -> “设置服务器...”
- 填写配置文件,类似于我上面描述的方式,并用名称保存它(也许服务器的名称是个好主意)。
- 文件 -> SFTP/FTP -> “浏览远程...”
- 使用相当笨重的界面浏览文件,选择它,然后选择“编辑”
- 根据需要编辑您的文件。保存后会自动上传。
我发现 ST3 足以满足我的需求。希望这至少对您有所帮助。如果您不寻找其他编辑器,希望 WinSCP 可以帮助您完成您需要做的事情。
答案4
确保您首先拥有 pscp,使用 git Bash 而不是 Windows power shell,scp odroid:/home/odroid/test/test.c C\Users\MyUser\Downloads