AI 一秒生成的 pc 查重清理小工具

57 天前
 sosme

功能:查找硬盘重复文件并询问是否清理 思考:人与机器沟通的门槛越来越低,人只需要把想法/需求提给 ai 立刻可以获得想要的结果,完全不需要自己思考写代码,“程序员”或许会消失,取而代之的是“AI 对接员”

ai 代码:

import os import hashlib

def hash_file(file_path): """计算文件的哈希值""" hasher = hashlib.md5() # 可以使用其他哈希函数 with open(file_path, 'rb') as f: while chunk := f.read(8192): hasher.update(chunk) return hasher.hexdigest()

def find_duplicates(root_folder): """查找重复文件""" hashes = {} duplicates = []

for dirpath, _, filenames in os.walk(root_folder):
    for filename in filenames:
        file_path = os.path.join(dirpath, filename)
        file_hash = hash_file(file_path)

        if file_hash in hashes:
            duplicates.append((file_path, hashes[file_hash]))
        else:
            hashes[file_hash] = file_path

return duplicates

def main(): # 指定搜索的根目录,例如 C:\ 或者其他驱动器 root_folder = input("请输入要搜索的根目录(例如 C:\):")

duplicates = find_duplicates(root_folder)

if not duplicates:
    print("未找到重复文件。")
    return

print("找到的重复文件:")
for i, (file1, file2) in enumerate(duplicates):
    print(f"{i + 1}: {file1}\n   {file2}")

# 删除选择
while True:
    choice = input("请输入要删除的文件编号(或者输入 'q' 退出):")
    if choice.lower() == 'q':
        break
    try:
        index = int(choice) - 1
        if 0 <= index < len(duplicates):
            file_to_delete = duplicates[index][0]
            os.remove(file_to_delete)
            print(f"已删除文件: {file_to_delete}")
            duplicates.pop(index)  # 从列表中移除已删除的项
        else:
            print("无效的编号。")
    except ValueError:
        print("请输入有效的编号。")

if name == "main": main()

556 次点击
所在节点    编程
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1083674

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX