scp 命令没有这样的文件或目录错误

No such file or directory error on scp command

我使用 codeship 进行部署,它提供了一种使用 ssh 访问构建机器的方法:

ssh rof@1.2.3.4 -p 65503

这很好用,我进入了机器。现在我想将一个文件从远程机器复制到我的本地机器。我正在尝试:

sudo scp -p 65503 -v -i ~/.ssh/id_rsa rof@1.2.3.4:~/home/rof/cache/app.js /

我收到一大堆错误:

cp: 65503: No such file or directory
cp: -v: No such file or directory
cp: -i: No such file or directory
rof@23.20.112.101: Permission denied (publickey).

我不知道为什么每个参数都说 No such file or directory

id_rsa 存在并且在 ~/.ssh/ 目录中。

权限被拒绝错误似乎是一个单独的问题。

有什么想法吗?

看文档看到的第一个问题:

man scp:

 -P port
         Specifies the port to connect to on the remote host.  Note that
         this option is written with a capital ‘P’, because -p is
         already reserved for preserving the times and modes of the
         file.

 -p      Preserves modification times, access times, and modes from the
         original file.

所以 scp -p 表示 "copy while preserving timestamps" 而 65503 是(其中一个)源文件的名称。

试试 scp -P 65503