You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何筛选文件夹中含特定关键词的CSV文件并分离移动

解决方案

下面提供两种实用的实现方式,按需选择:

Python 脚本(灵活自定义)

适合需要复杂筛选逻辑或批量自动化处理的场景。

基础版(按文件名筛选)

import os
import shutil

# 替换成你自己的路径和关键词
source_folder = "/Users/xxx/csv_files"
target_folder = "/Users/xxx/filtered_csvs"
target_keyword = "2024_q3"

# 自动创建目标文件夹,不存在就新建
os.makedirs(target_folder, exist_ok=True)

# 遍历源文件夹里的所有文件
for file_name in os.listdir(source_folder):
    # 只处理CSV文件,且文件名包含指定关键词
    if file_name.endswith(".csv") and target_keyword in file_name:
        source_path = os.path.join(source_folder, file_name)
        target_path = os.path.join(target_folder, file_name)
        shutil.move(source_path, target_path)
        print(f"已移动: {file_name}")

进阶版(按文件内容筛选)

如果需要检查CSV文件内容里是否有关键词,替换上面的判断逻辑即可:

for file_name in os.listdir(source_folder):
    if file_name.endswith(".csv"):
        source_path = os.path.join(source_folder, file_name)
        try:
            # 只读取前5行检查,避免大文件拖慢速度
            with open(source_path, "r", encoding="utf-8") as f:
                for line in f.readlines()[:5]:
                    if target_keyword in line:
                        shutil.move(source_path, os.path.join(target_folder, file_name))
                        print(f"已移动内容含关键词的文件: {file_name}")
                        break
        except Exception as e:
            print(f"处理{file_name}时出错: {str(e)}")

命令行快速操作

不用写脚本,直接跑命令就能完成,适合临时处理。

Windows(PowerShell)

# 替换成你的实际路径和关键词
$source = "C:\Users\xxx\csv_source"
$target = "C:\Users\xxx\csv_target"
$keyword = "2024_q3"

# 创建目标文件夹
New-Item -ItemType Directory -Force -Path $target

# 移动文件名含关键词的CSV
Get-ChildItem $source -Filter *.csv | Where-Object { $_.Name -match $keyword } | Move-Item -Destination $target

Linux/macOS(终端)

# 替换成你的实际路径和关键词
source_dir="/home/xxx/csvs"
target_dir="/home/xxx/filtered_csvs"
keyword="2024_q3"

# 创建目标文件夹
mkdir -p $target_dir

# 移动文件名含关键词的CSV
mv $source_dir/*$keyword*.csv $target_dir/

如果要按文件内容筛选,用下面的命令:

  • Linux/macOS:
grep -l "$keyword" $source_dir/*.csv | xargs -I {} mv {} $target_dir/
  • Windows PowerShell:
Get-ChildItem $source -Filter *.csv | Select-String -Pattern $keyword | Select-Object -Unique Path | Move-Item -Destination $target

内容的提问来源于stack exchange,提问作者johnnyeightpence

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 19:10:28