windows下批量拷贝目录下所有文件夹中的指定文件.bat 
时间: 2023-05-08 18:59:13 浏览: 212
在Windows系统下,我们可以通过批处理脚本(bat文件)来实现批量拷贝目录下所有文件夹中的指定文件。具体步骤如下:
1. 首先打开记事本,输入以下代码:
@echo off
if not exist %2 mkdir %2
for /d %%i in (%1\*) do xcopy "%%i\指定文件名.后缀" %2\ /s /i /y
2. 在上述代码中,第一个参数%1为原始目录的路径,是需要从中拷贝指定文件的目录;第二个参数%2为目标目录的路径,是需要将指定文件拷贝到的目录。
3. 在指定文件名和后缀处,将“指定文件名.后缀”替换为你真正需要拷贝的文件名和后缀。
4. 将文件保存为“文件名.bat”格式,例如“copyfile.bat”,双击运行,就可以实现批量拷贝目录下所有文件夹中的指定文件到指定目录中。
总之,这个批处理脚本可以使得我们在Windows系统下更加高效地拷贝目录下所有文件夹中的指定文件,同时也方便自己的文件整理工作。
相关问题
linux命令行拷贝超大文件夹下所有文件到另一文件夹下
你可以使用 `rsync` 命令来拷贝超大文件夹下所有文件到另一文件夹下。具体命令如下:
```
rsync -avh /path/to/source/folder/ /path/to/destination/folder/
```
其中,`/path/to/source/folder/` 是源文件夹路径,`/path/to/destination/folder/` 是目标文件夹路径。
`-a` 参数表示使用归档模式拷贝文件,保留文件属性和权限;`-v` 参数表示输出详细信息;`-h` 参数表示以人类可读的方式显示文件大小。
注意,末尾的斜杠 `/` 是必须的,它表示拷贝文件夹下的所有内容,而不是拷贝整个文件夹。
如果你的文件夹非常大,可能需要等待一段时间才能完成拷贝。
c++拷贝超大文件夹下所有文件到另一文件夹下
在 C++ 中,你可以使用 `boost::filesystem` 库来实现拷贝超大文件夹下所有文件到另一文件夹下的功能。具体代码如下:
```c++
#include <iostream>
#include <boost/filesystem.hpp>
namespace fs = boost::filesystem;
void copy_folder(const fs::path& source, const fs::path& destination)
{
if (!fs::exists(destination))
{
fs::create_directories(destination);
}
for (fs::directory_iterator file(source); file != fs::directory_iterator(); ++file)
{
const fs::path current(file->path());
const fs::path destination_file(destination / current.filename());
if (fs::is_directory(current))
{
copy_folder(current, destination_file);
}
else
{
fs::copy_file(current, destination_file, fs::copy_option::overwrite_if_exists);
}
}
}
int main()
{
const fs::path source("/path/to/source/folder");
const fs::path destination("/path/to/destination/folder");
copy_folder(source, destination);
return 0;
}
```
其中,`copy_folder` 函数使用递归方式遍历源文件夹中的所有文件和子文件夹,并将它们拷贝到目标文件夹中。如果目标文件夹不存在,则先创建目标文件夹。
请将 `/path/to/source/folder` 和 `/path/to/destination/folder` 替换成实际的源文件夹和目标文件夹路径。注意,该代码需要使用 `boost::filesystem` 库,需要在编译时链接该库。
相关推荐















