我目前有以下bash脚本:
for a in `seq 16 75`;
do scp doneill@server:/mnt/device/folder/numbered_file$a.txt ./;
done;
Run Code Online (Sandbox Code Playgroud)
虽然这确实有效,但速度非常慢.每个文件,对服务器的请求大约需要4-7秒,然后发送文件需要另外3秒左右.
有没有办法做到这一点只涉及发送到服务器的1个命令(以最小化我的VPN花费发送接收每个单独命令的时间)?通常情况下,我会做类似的事情,scp doneill@server:/mnt/device/folder/numbered_file*但文件夹中有数千个文件我不想复制.我只需要那些少数(由序列定义).
在 bash 中:
scp doneill@server:/mnt/device/folder/numbered_file{16..75}.txt ./
Run Code Online (Sandbox Code Playgroud)