scp 目标路径错误

scp 目标路径错误

我正在将一个网站从远程服务器复制到另一个服务器,并且我有

SOURCE SERVER 
/var/www/vhosts/namesiteA.com
    /FolderA
    /FolderB

DESTINATION SERVER
/var/www/vhosts/namesiteB.com

  

运行以下 bash 后:

#!/bin/bash
SOURCE="[email protected]:/var/www/vhosts/namesiteA.com/"
DESTINATION="/var/www/vhosts/namesiteB.com/"
sshpass -p "<source_server_pass>" scp -p -r "$SOURCE" "$DESTINATION"

工作正常,但我期望:

DESTINATION SERVER
/var/www/vhosts/namesiteB.com
    /FolderA
    /FolderB 

instead I get:
/var/www/vhosts/namesiteB.com
    /namesiteA.com
        /FolderA
        /FolderB

答案1

使用新的基于 SFTP 的协议,您需要在源目录路径上scp添加尾随:.

SOURCE="[email protected]:/var/www/vhosts/namesiteA.com/."

不幸的是,如果您使用的是旧版本scp,则使用旧版本scp它足够新,可以通过修复来更新CVE-2018-20685,尾随点将破坏副本。看scp:错误:意外的文件名

相关内容