我有一个Arduino Yun,想要为Yun设置服务器。
所以我想要的是将包含py文件和index.html的文件夹复制到我的Yun
我使用mac终端进行此操作
命令看起来像这样
scp -r /Users/gudi/Desktop/LobsterHeartRate root@192.168.240.1:/mnt/sda1
然后终端要求输入密码
输入后显示
scp: /mnt/sda1/LobsterHeartRate: Not a directory
我没有输入/ mnt / sda1 / LobsterHeartRate为什么会显示此错误
答案 0 :(得分:0)
正如@JensHöpken所说,你的帖子有点稀疏。但是,尝试在帖子的行之间进行阅读,我怀疑LobsterHeartRate是本地系统上的DIRECTORY,但是目标系统中的FILE名为LobsterHeartRate。这可能发生在目录树的顶部,或者您可能在树的下方有相同名称的目录/文件。 scp -rv可能有助于解决这里的任何混淆。
注意: scp -r解析符号链接。如果要保留符号链接,则需要执行其他操作。出于历史原因,我使用以下内容,但 cpio 带有 find 前端,为细粒度文件选择打开了有趣的可能性。
( cd /Users/gudi/Desktop && tar -cf - LobsterHeartRate ) | ssh root@192.168.240.1 'cd /mnt/sda1 && tar -xf -'
对于安全的“干运行”,您可以将-xf更改为-tf。和&&如果任何先前命令失败,则需要链来防止发生不良事件。
免责声明:任何调试都留给学生练习。
答案 1 :(得分:0)
您的代码
scp -r /Users/gudi/Desktop/LobsterHeartRate root@192.168.240.1:/mnt/sda1
要求远程目录/mnt/sda1
存在。在您的情况下,这看起来并非如此。使用ssh root@192.168.240.1 ls /mnt/sda1
进行检查。
scp
是一个简单的工具,它不允许您动态重命名目录,目标目录必须存在。你可以试试
scp -r /Users/gudi/Desktop/LobsterHeartRate root@192.168.240.1:/mnt/
ssh root@192.168.240.1 mv /mnt/LobsterHeartRate /mnt/sda1
左右,如果它符合您的需求。但是复制更多文件rsync
通常更合适。检查其手册页并在下次尝试。