Linux中怎么把一个文件批量复制到同个文件夹下的不同的子文件夹里
时间: 2024-10-01 18:11:36 浏览: 38
Linux 中批量提取文件夹下所有目录及文件名称
在Linux中,你可以使用`find`命令配合`cp`命令来实现文件的批量复制。假设你要将当前目录下所有以`.txt`结尾的文件,复制到名为`subfolder_1`, `subfolder_2`, ..., 的一系列子文件夹中。可以按照以下步骤操作:
1. 首先,创建所需的子文件夹,例如:
```
mkdir -p subfolder_1 subfolder_2 ... subfolder_n
```
2. 使用`find`查找所有的`.txt`文件,并指定目标文件夹路径:
```
find . -type f -name "*.txt" -exec cp {} {/path/to/subfolder_$(printf "%02d" $(($(find . -maxdepth 1 -type d | wc -l) + 1)))}/ \;
```
这个命令会递归地搜索当前目录(`.`),找到所有.txt文件,并使用`{}`占位符代表每个找到的文件,将其复制到相应编号的子文件夹。`$(...)`部分用于生成子文件夹的路径。
请注意,你需要替换`/path/to/`为你实际的子文件夹列表,如果只有一个,可以直接写`subfolder_`;如果有多个,可以用通配符`*`代替,然后手动输入或通过循环生成。
阅读全文