开发者社区> 问答> 正文

如何将所有现有文件从远程sftp服务器传输到本地目录,并创建包含这些文件列表的.txt文件?

我正在尝试从远程sftp服务器复制所有csv文件,并将这些文件循环粘贴到本地服务器。然后,我想将这些文件创建为.txt文件列表,以便处理这些文件。我为此目的尝试了一些现有的解决方案,但是它们都无法正常工作。我是bash脚本的新手。

先感谢您。

展开
收起
祖安文状元 2020-01-07 13:26:17 1246 0
1 条回答
写回答
取消 提交回答
  • 1)您可以创建rsa键来链接您的远程服务器和本地服务器。这样,您无需输入密码:

    https://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/

    https://help.github.com/en/articles/error-agent-admitted-failure-to-sign

    如何将bash别名定义为多个命令的序列?

    我使用这三个链接成功设置了rsa密钥。我在实验室的Wiki上创建了一个页面,介绍如何逐步执行此操作,如果您遇到问题,可以将说明上载到github。

    2)对于复制,请尝试以下操作:

    scp -r username@remote_server:/path_to_directory_containing_files_you_want/*csv local_path_you_want_to_copy_to

    ls > name_of_file.txt

    -r表示您要递归复制所有指定的文件,这里所有的都是csv文件。您应该已经具有用户名和远程服务器名称。如果您已经将文件复制到本地目录中,.则该操作与放入整个本地路径相同。复制所有文件后执行ls命令,它将创建一个新的txt文件,其中包含该目录中文件的所有名称。假设那里只有新复制的文件,这将是获取复制文件列表的最简单方法。希望这可以帮助!

    2020-01-07 13:26:24
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS计算与存储分离架构实践 立即下载