Keb*_*man 16 bash file-transfer perl macos
当我在 Mac 上复制多个文件时,系统会尝试同时复制所有文件。问题是双重的。
首先,当您选择多个文件并复制它们时,它们都进入一个进程,采用“全有或全无”的方法,这与数据库中的 ACID 不同。这通常是不可取的。
此外,当您添加其他复制进程时,系统会尝试同时复制所有内容。
例如,我决定复制一个大文件A,然后我决定也复制一个大文件B。这导致两个并行复制操作,无论“大文件”之一是否也是许多文件的选择。
我不喜欢这个有几个原因:
结果:A我想首先传输和使用的文件到达所需的时间比需要的要长得多,并且当从 LAN 上的中央 HD 复制时,我无法使用第一个文件,直到所有其他文件也都到达为止。
因此...如何在 Mac 上排队复制多个文件?澄清一下:无论选择了很多文件,还是一一添加,我都希望它们都放入一个一次只复制一个文件的队列中,直到队列完成。
也欢迎使用 Bash,尤其是 Perl 来回答!
UltraCopier是一个免费的跨平台复制实用程序,目前正在开发中,所以它还不是那么整洁和优美。一旦你安装它,它就会出现在你的菜单栏中。
它管理一个复制列表,允许您将复制或移动作业排入队列,然后依次处理。您还可以定义复制进程优先级以及传输的块大小。
使用新版本,您可以使用相似的源和/或目标进行分组,或者始终或从不进行分组。

这是一个bash解决方案:
cp file1 dest1; cp file2 dest2
Run Code Online (Sandbox Code Playgroud)
对要复制的文件数量重复此操作。只需继续添加分号和cp命令即可。
你也可以这样做
cp file1 dest1 && cp file2 dest2
Run Code Online (Sandbox Code Playgroud)
在本例中,只有在复制成功之前的文件才会被复制。
对于文件夹,您可以执行以下操作:
for x in folder/*; do echo "Copying $x"; cp "$x" destdir; done
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23906 次 |
| 最近记录: |