1. 自动整理文件夹
import os
import shutil
def organize_folder(folder_path):
# 定义文件扩展名和对应的文件夹
file_types = {
'Documents': ['.pdf', '.docx', '.txt', '.pptx', '.xlsx'],
'Images': ['.jpg', '.jpeg', '.png', '.gif', '.bmp'],
'Videos': ['.mp4', '.avi', '.mkv'],
'Music': ['.mp3', '.wav'],
'Archives': ['.zip', '.rar', '.tar', '.gz']
}
# 遍历文件夹中的文件
for filename in os.listdir(folder_path):
file_path = os.path.join(folder_path, filename)
# 如果是文件
if os.path.isfile(file_path):
for folder, extensions in file_types.items():
if any(filename.endswith(ext) for ext in extensions):
folder_path = os.path.join(folder_path, folder)
if not os.path.exists(folder_path):
os.makedirs(folder_path)
shutil.move(file_path, os.path.join(folder_path, filename))
break
# 用法示例
folder_path = '/path/to/your/folder'
organize_folder(folder_path)
2. 批量重命名文件
import os
def batch_rename_files(folder_path, prefix='file_'):
# 获取文件夹中的所有文件
files = os.listdir(folder_path)
for i, filename in enumerate(files):
file_path = os.path.join(folder_path, filename)
# 确保是文件而非文件夹
if os.path.isfile(file_path):
new_name = f"{prefix}{i + 1}{os.path.splitext(filename)[1]}"
new_path = os.path.join(folder_path, new_name)
os.rename(file_path, new_path)
# 用法示例
folder_path = '/path/to/your/folder'
batch_rename_files(folder_path)
3. 自动备份文件
import shutil
import os
import time
def backup_files(source_folder, backup_folder):
if not os.path.exists(backup_folder):
os.makedirs(backup_folder)
timestamp = time.strftime("%Y%m%d%H%M%S")
backup_path = os.path.join(backup_folder, f"backup_{timestamp}")
shutil.copytree(source_folder, backup_path)
print(f"备份完成:{backup_path}")
# 用法示例
source_folder = '/path/to/your/source_folder'
backup_folder = '/path/to/your/backup_folder'
backup_files(source_folder, backup_folder)
4. 定时关机
import os
import time
def schedule_shutdown(hours, minutes):
# 获取当前时间
current_time = time.localtime()
target_time = time.struct_time((current_time.tm_year, current_time.tm_mon, current_time.tm_mday, hours, minutes, 0, current_time.tm_wday, current_time.tm_yday, current_time.tm_isdst))
# 计算等待的秒数
wait_seconds = time.mktime(target_time) - time.mktime(current_time)
if wait_seconds < 0:
print("指定的时间已经过去!")
return
print(f"系统将在 {wait_seconds} 秒后关机...")
time.sleep(wait_seconds)
os.system("shutdown /s /t 0")
# 用法示例
schedule_shutdown(23, 0) # 例如,设置为晚上 11 点关机
5. 自动生成会议记录模板
from datetime import datetime
def generate_meeting_minutes(file_path):
date_str = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
content = f"""
会议记录 - {date_str}
参会人员:
1.
2.
3.
会议议程:
1.
2.
3.
会议讨论:
1.
2.
3.
会议结论:
1.
2.
3.
"""
with open(file_path, 'w') as f:
f.write(content)
print(f"会议记录已保存到 {file_path}")
# 用法示例
file_path = '/path/to/your/meeting_minutes.txt'
generate_meeting_minutes(file_path)