首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过bash脚本scp一堆文件:肯定有更好的方法

通过bash脚本scp一堆文件:肯定有更好的方法
EN

Stack Overflow用户
提问于 2011-01-19 04:35:41
回答 3查看 5.8K关注 0票数 6

我目前有以下bash脚本:

代码语言:javascript
运行
复制
for a in `seq 16 75`; 
do scp doneill@server:/mnt/device/folder/numbered_file$a.txt ./; 
done;

虽然这确实有效,但它非常慢。每个文件,对服务器的请求大约需要4-7秒,然后发送文件需要另外3秒左右。

有没有办法做到这一点,只涉及一个命令发送到服务器(以最小化我的VPN花在发送接收每个单独的命令的时间)?通常,我会执行类似scp doneill@server:/mnt/device/folder/numbered_file*的操作,但文件夹中有数千个我不想复制的文件。我只需要获取这几个(由序列定义)。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-01-19 04:37:50

在bash中:

代码语言:javascript
运行
复制
scp doneill@server:/mnt/device/folder/numbered_file{16..75}.txt ./
票数 5
EN

Stack Overflow用户

发布于 2011-01-19 04:41:40

rsync应该可以做到这一点:http://www.manpagez.com/man/1/rsync/

您可能需要修改一些参数,但如果操作得当,这可能是通过ssh传输文件的最快方法。

票数 3
EN

Stack Overflow用户

发布于 2011-01-19 04:39:13

这对bash有效吗?

代码语言:javascript
运行
复制
scp doneill@server:/mnt/device/folder/numbered_file{16..75}.txt ./
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4728752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档