怎么用脚本批量创建文件夹

wen 实用脚本 1

本文目录导读:

怎么用脚本批量创建文件夹

  1. Windows 系统
  2. Mac/Linux 系统
  3. Python 脚本(跨平台)
  4. 使用小技巧
  5. 使用建议

这里提供几种批量创建文件夹的方法,涵盖不同平台和需求:

Windows 系统

CMD 批处理脚本

@echo off
:: 批量创建文件夹
for %%i in (folder1 folder2 folder3 folder4) do (
    md "%%i"
)
echo 创建完成!
pause

带序号的版本:

@echo off
:: 创建 folder1 - folder20
for /l %%i in (1,1,20) do (
    md "folder%%i"
)
echo 已创建 20 个文件夹!
pause

从文本文件读取:

@echo off
for /f "delims=" %%i in (folder_list.txt) do (
    md "%%i" 2>nul
)
echo 批量创建完成!
pause

PowerShell 脚本

# 简单批量创建
1..20 | ForEach-Object { New-Item -ItemType Directory -Name "Folder$_" }
# 从数组创建
$folders = @("项目A", "项目B", "项目C", "文档", "图片")
foreach ($folder in $folders) {
    New-Item -ItemType Directory -Name $folder
}
# 从 CSV 文件读取
Import-Csv "folders.csv" | ForEach-Object {
    New-Item -ItemType Directory -Name $_.FolderName
}
# 在指定路径下创建
$basePath = "D:\工作目录"
$folderNames = @("2024", "2025", "2026")
foreach ($name in $folderNames) {
    New-Item -ItemType Directory -Path "$basePath\$name" -Force
}

Mac/Linux 系统

Bash 脚本

#!/bin/bash
# 简单批量创建
mkdir folder1 folder2 folder3 folder4
# 带序号的循环创建
for i in {1..20}
do
    mkdir "folder$i"
done
# 从文件读取
while IFS= read -r folder
do
    mkdir -p "$folder"
done < folder_list.txt
# 创建有规律的文件夹
for month in 01 02 03 04 05 06 07 08 09 10 11 12
do
    mkdir "2024年$month月"
done

一行命令

# 使用 xargs
cat folders.txt | xargs mkdir -p
# 使用 seq 和 xargs
seq 1 20 | xargs -I {} mkdir folder{}
# 直接一行创建
mkdir -p {folder1,folder2,folder3,folder4}

Python 脚本(跨平台)

基础版本:

import os
# 基础批量创建
folders = ["folder1", "folder2", "folder3", "folder4"]
for folder in folders:
    os.makedirs(folder, exist_ok=True)
    print(f"已创建: {folder}")

进阶版本:

import os
import datetime
def create_folders_batch():
    # 1. 创建有序号的文件夹
    for i in range(1, 21):
        folder_name = f"项目_{i:03d}"  # 效果: 项目_001
        os.makedirs(folder_name, exist_ok=True)
        print(f"已创建: {folder_name}")
    # 2. 创建日期文件夹
    today = datetime.date.today()
    for i in range(7):
        date = today + datetime.timedelta(days=i)
        folder_name = date.strftime("%Y-%m-%d")
        os.makedirs(folder_name, exist_ok=True)
    # 3. 从列表文件创建
    try:
        with open('folder_list.txt', 'r', encoding='utf-8') as f:
            for line in f:
                folder_name = line.strip()
                if folder_name:
                    os.makedirs(folder_name, exist_ok=True)
    except FileNotFoundError:
        print("folder_list.txt 文件不存在")
if __name__ == "__main__":
    create_folders_batch()

使用小技巧

创建多层目录结构

# Linux/Mac
mkdir -p project/{src,docs,test}/{sub1,sub2}
# Windows CMD
mkdir project\src project\docs project\test

创建带日期的文件夹

# Linux/Mac
for day in $(seq -w 1 31); do
    mkdir -p "2024-04-${day}"
done
# Windows PowerShell
1..31 | ForEach-Object {
    New-Item -ItemType Directory -Name "2024-04-$_"
}

创建分类文件夹

import os
categories = {
    "文档": ["报告", "手册", "合同"],
    "图片": ["产品照片", "活动照片", "设计素材"],
    "视频": ["宣传视频", "教学视频"]
}
for main_folder, sub_folders in categories.items():
    for sub_folder in sub_folders:
        path = os.path.join(main_folder, sub_folder)
        os.makedirs(path, exist_ok=True)
        print(f"已创建: {path}")

使用建议

  1. 先测试再运行:建议先在小范围测试脚本,确认无误后再批量执行
  2. 添加错误处理:脚本中添加异常处理,避免重复创建时报错
  3. 使用相对路径:确保在当前工作目录下创建,或明确指定路径
  4. 备份重要数据:批量操作前记得备份

根据你的具体需求,选择最适合的方法即可,如果需要更具体的示例,请告诉我你的使用场景。

抱歉,评论功能暂时关闭!