【问题标题】:Transfer files from remote server to local machine将文件从远程服务器传输到本地计算机
【发布时间】:2022-01-09 22:22:35
【问题描述】:

如果我只能访问远程服务器,如何将文件从远程主机直接传输到本地计算机?我已经尝试从本地机器通过 ssh 进行 scp 和 tail,但我必须使用远程服务器从远程机器传输数据。

【问题讨论】:

    标签: amazon-ec2 file-transfer


    【解决方案1】:

    您可以使用 scp 将文件从服务器传输到服务器、服务器传输到本地计算机以及本地计算机传输到服务器。使用以下命令

    scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2
    

    有关选项,请查看手册here

    以下是从服务器下载文件到本地机器的示例

    scp user1@foo.com:/var/www/html/foo.txt ~/Desktop/
    

    【讨论】:

    • 使用 scp 命令我可以从服务器下载或传输文件到本地或从本地传输到服务器。但是如果我可以访问服务器机器而不是本地机器,那么我如何将文件传输到访问服务器机器的本地机器。
    【解决方案2】:

    你可以试试daggy

    使用要传输的文件和要从中传输的远程服务器(files.yaml)创建源配置:

        aliases:  
            - &my_commands
                file1:
                    exec: cat file1
                    extension: log
                file2:
                    exec: cat file2
                    extension: log
                
            - &ssh_auth
                user: {{env_USER}}
                passphrase: {{env_PASSWORD}}
                    
        sources:
            localhost:
                type: local
                commands: *my_commands
            remotehost:
                host: 192.168.1.9
                type: ssh2
                parameters: *ssh_auth
                commands: *my_commands
            remotehost2:
                host: 192.168.1.10
                type: ssh2
                parameters: *ssh_auth
                commands: *my_commands
    

    奔跑吧:

        daggy files.yaml
    

    【讨论】: