【问题标题】:scp -r does not seem to work on zsh, no idea whyscp -r 似乎不适用于 zsh,不知道为什么
【发布时间】:2023-02-10 15:36:28
【问题描述】:

我可以将文件 scp 到远程主机,但是如果我尝试 scp -r 目录它不起作用

scp -r mydir me@remote.host:/where/the/dir/has/to/go/
scp: realpath /whatever/mydir: No such file
scp: upload "/whatever/mydir": path canonicalization failed
scp: failed to upload directory cf2t to /where/the/dir/has/to/go/

我认为这是 globbing 的一些问题,所以我引用了该死命令的不同部分但无济于事。

【问题讨论】:

  • realpath mydir 是否给出任何错误或做任何有趣的事情?
  • 没有。没有符号链接或其他任何东西。
  • 您的scp 真的如您所想,还是别名或 shell 函数?做一个type -a scp。除此之外,您的命令没有使用任何特定于 zsh 的技巧。特别是你不做任何通配,只要路径没有空格或其他特定于 shell 的字符,你就不需要引用任何东西。对于这种类型的错误,您最好发布精确的您使用的路径名。
  • 在最新的 MacOS 升级后,我也注意到了这个问题(不确定是不是这个原因)。
  • bash 和 Manjaro Linux 上也有同样的问题。但是我可以 scp -r remote 到本地

标签: zsh scp


【解决方案1】:
  1. remote.host:mkdir -p /where/the/dir/has/to/go/
  2. 在本地主机上:scp -r mydir me@remote.host:/where/the/dir/has/to/go/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-03
    • 2010-12-23
    • 1970-01-01
    • 1970-01-01
    • 2011-09-27
    • 1970-01-01
    • 1970-01-01
    • 2020-09-16
    相关资源
    最近更新 更多