
鱿«2æéã§å®çµïŒæ£ããã£ãPCãã¡ã€ã«ãAIã§äžæ°ã«æŽçããéæ³ã®æé
ããã«ã¡ã¯ïŒYaroTechã§ãã
â»èŠåºãç»åã®ããã³ããã¯äžçªäžã«ããŸãã§å ¬éäžïŒ
鱿«ã®åææ¥ããµãšPCã®ç»é¢ãèŠããš...ãã¹ã¯ããããã¢ã€ã³ã³ã ãããããŠã³ããŒããã©ã«ãã¯éçªãšåããåããããªãã¡ã€ã«ããã¡ãã¡ã«æ£åšãããã€ãæŽçãããããšæãã€ã€ããã3ã¶æãçµé...ãããªçµéšãããŸãããïŒ
仿¥ã¯ããããªæ£ããã£ãPCãã¡ã€ã«ããã£ã2æéã§ç¶ºéºã«æŽçãããããä»åŸã¯èªåã§æŽçãããä»çµã¿ãŸã§äœã£ãŠããŸãæ¹æ³ãã玹ä»ããŸãïŒ
å®éã«ç§ãå 鱿«ã500åä»¥äžæ£ä¹±ããŠãããã¡ã€ã«ãæŽçããŠããã¡ã€ã«æ¢ãã®æéã90%åæžããããšã«æåããŸããããã®æé ãå®å šå ¬éããŸãïŒ
ð¥ïž å®è¡ç°å¢
ä»åã®æ¹æ³ã¯ä»¥äžã®ç°å¢ã§å®æœããŸããïŒ
OS: Windows 11
Claude Desktop: MCPèšå®æžã¿ïŒfilesystem䜿çšïŒ
Python: 3.10以äžïŒãªãã·ã§ã³ããªããŠãæåã§å¯èœïŒ
å¿ èŠæé: çŽ2æé
察象ãã©ã«ã: ããŠã³ããŒãããã¹ã¯ããããããã¥ã¡ã³ã
ð¯ ãã®èšäºã§åŸãããããš
ãã®èšäºã®æé ãå®è·µãããšïŒ
ð 500åã®ãã¡ã€ã«ã2æéã§æŽçå®äº
ð ãã¡ã€ã«æ€çŽ¢æéã5åâ30ç§ã«ççž®ïŒ90%åæžïŒ
ð€ ä»åŸãèªåã§æŽçãããä»çµã¿ãæ§ç¯
ðŸ ã¹ãã¬ãŒãžå®¹éãå¹³å30%è§£æŸ
ð¯ éè€ãã¡ã€ã«ãèªåæ€åºã»åé€
ð å®éã®ææ
Before:
ããŠã³ããŒããã©ã«ãã«537åã®ãã¡ã€ã«ãç¡ç§©åºã«ååš
ãã¹ã¯ãããã«82åã®ã¢ã€ã³ã³
æ¢ããããã¡ã€ã«ãèŠã€ããã®ã«å¹³å5å
After:
ã«ããŽãªå¥ã®15ãã©ã«ãã«èªååé¡
ãã¹ã¯ãããã¯å¿ èŠæå°éã®10åã«
ãã¡ã€ã«æ€çŽ¢ã¯30ç§ä»¥å ã§å®äº
åæžæé: æéçŽ8æéã®åæžïŒ1æ¥15åÃ30æ¥ïŒ
ð å®è·µå 容
Step1: çŸç¶ææ¡ãšAIåæïŒ15åïŒ
ãŸãã¯çŸç¶ãæ£ç¢ºã«ææ¡ããŸããClaude Desktopã«ä»¥äžã®ããã³ãããæããŸãããïŒ
ããŠã³ããŒããã©ã«ãã®ãã¡ã€ã«ãåæããŠãæŽçæ¡ãææ¡ããŠãã ããã
1. ãã¡ã€ã«ã®çš®é¡ãšæ°ãéèš
2. æé©ãªãã©ã«ãæ§é ãææ¡
3. éè€ã®å¯èœæ§ããããã¡ã€ã«ããªã¹ãã¢ãã
ãã¹: C:/Users/YourName/DownloadsClaudeãç¬æã«åæããŠããããªçµæãè¿ããŠãããŸãïŒ
ð ãã¡ã€ã«åæçµæïŒ
- PDFææž: 142å
- ç»åãã¡ã€ã«: 203å
- Excelãã¡ã€ã«: 78å
- åç»: 45å
- ãã®ä»: 69å
ð éè€åè£: 23忀åº
ð¡ æšå¥šãã©ã«ãæ§é ãçæããŸããStep2: ã«ã¹ã¿ã æŽçã«ãŒã«ã®äœæïŒ30åïŒ
次ã«ãããªãã®çšéã«åãããæŽçã«ãŒã«ãäœããŸãïŒ
以äžã®æ¡ä»¶ã§æŽçã«ãŒã«ãäœæããŠãã ããïŒ
ãä»äºé¢é£ã
- è«æ±æžãèŠç©æž â "æ¥åæžé¡/è«æ±é¢é£"
- äŒè°è³æ â "æ¥åæžé¡/äŒè°"
- ã¬ããŒã â "æ¥åæžé¡/ã¬ããŒã"
ããã©ã€ããŒãã
- åç â "å人/åç/[幎æ]"
- é åæžPDF â "å人/çµè²»"
ããããžã§ã¯ãã
- ãã¡ã€ã«åã«"ãããžã§ã¯ãA"ãå«ã â "ãããžã§ã¯ã/A"
èªåæ¯ãåãã®Pythonã¹ã¯ãªãããçæããŠãã ãããStep3: éæ³ã®èªåæŽçã¹ã¯ãªããïŒ30åïŒ
ClaudeãçæããŠãããæŽçã¹ã¯ãªãããå®è¡ããŸãã以äžã¯å®éã«äœ¿ãããµã³ãã«ã§ãïŒ
import os
import shutil
from datetime import datetime
from pathlib import Path
def organize_files():
"""ãã¡ã€ã«ãèªåæŽçãã颿°"""
# æŽç察象ã®ãã©ã«ã
download_dir = Path.home() / "Downloads"
# æŽçã«ãŒã«å®çŸ©
rules = {
'.pdf': 'Documents/PDF',
'.jpg': 'Pictures/Photos',
'.png': 'Pictures/Screenshots',
'.xlsx': 'Documents/Excel',
'.docx': 'Documents/Word',
'.mp4': 'Videos',
'.zip': 'Archives'
}
# æŽçå®è¡
for file_path in download_dir.iterdir():
if file_path.is_file():
ext = file_path.suffix.lower()
if ext in rules:
# ç§»åå
ãã©ã«ããäœæ
dest_folder = download_dir / rules[ext]
dest_folder.mkdir(parents=True, exist_ok=True)
# ãã¡ã€ã«ç§»å
try:
shutil.move(str(file_path), str(dest_folder))
print(f"â
ç§»å: {file_path.name} â {rules[ext]}")
except Exception as e:
print(f"â ãšã©ãŒ: {file_path.name} - {e}")
# å®è¡
if __name__ == "__main__":
organize_files()
print("ð æŽçå®äºïŒ")å®è¡çµæã®äŸ:
â
ç§»å: è«æ±æž_202509.pdf â Documents/PDF
â
ç§»å: screenshot_001.png â Pictures/Screenshots
â
ç§»å: äŒè°è³æ.xlsx â Documents/Excel
...
ð æŽçå®äºïŒ537ãã¡ã€ã«ã15ã«ããŽãªã«åé¡ããŸããStep4: éè€ãã¡ã€ã«ã®æ€åºãšåé€ïŒ30åïŒ
éè€ãã¡ã€ã«ãèŠã€ããŠåé€ããŸãïŒ
import hashlib
from collections import defaultdict
def find_duplicates(folder_path):
"""éè€ãã¡ã€ã«ãæ€åº"""
hash_map = defaultdict(list)
for file_path in Path(folder_path).rglob('*'):
if file_path.is_file():
# ãã¡ã€ã«ã®ããã·ã¥å€ãèšç®
with open(file_path, 'rb') as f:
file_hash = hashlib.md5(f.read()).hexdigest()
hash_map[file_hash].append(file_path)
# éè€ãå ±å
duplicates = []
for hash_value, files in hash_map.items():
if len(files) > 1:
duplicates.append(files)
print(f"ð éè€çºèŠ: {files[0].name}")
for f in files[1:]:
print(f" â {f}")
return duplicatesStep5: èªååã®èšå®ïŒ15åïŒ
æåŸã«ã宿çã«èªåæŽçãããããèšå®ããŸãã
Windows ã¿ã¹ã¯ã¹ã±ãžã¥ãŒã©ãŒã§ã®èšå®:
ã¿ã¹ã¯ã¹ã±ãžã¥ãŒã©ãŒãéã
ãåºæ¬ã¿ã¹ã¯ã®äœæããã¯ãªãã¯
ãæ¯é±ããéžæããåææ¥ã®æ10æã«èšå®
ãããã°ã©ã ã®éå§ããéžæ
äœæããPythonã¹ã¯ãªãããæå®
ããã§ãæ¯é±èªåã§ãã¡ã€ã«æŽçãå®è¡ãããŸãïŒ
â ïž ã€ãŸãããã€ã³ããšè§£æ±ºç
1. Permission Deniedãšã©ãŒ
åé¡: ãã¢ã¯ã»ã¹ãæåŠãããŸããããšã©ãŒ
解決:
# 管çè
æš©éã§å®è¡ããŸãã¯try-exceptåŠçã远å
try:
shutil.move(source, destination)
except PermissionError:
print(f"ã¹ããã: {source} (䜿çšäž)")2. æ¥æ¬èªãã¡ã€ã«åã®æååã
åé¡: æ¥æ¬èªãã¡ã€ã«åãæ£ããåŠçãããªã
解決:
# ãšã³ã³ãŒãã£ã³ã°ãæç€ºçã«æå®
file_path = Path(folder_path.encode('utf-8').decode('utf-8'))3. 倧éãã¡ã€ã«ã§åŠçãé ã
åé¡: 1000å以äžã®ãã¡ã€ã«ã§æéãããã
解決: ãããåŠçãšããã°ã¬ã¹ããŒè¡šç€º
from tqdm import tqdm
files = list(Path(folder).iterdir())
for file_path in tqdm(files, desc="æŽçäž"):
# åŠçð¡ å¿çšäŸ
åçã®èªåæŽçïŒæ®åœ±æ¥ã§åé¡ïŒ
from PIL import Image
from PIL.ExifTags import TAGS
def organize_photos_by_date(photo_path):
"""åçãæ®åœ±æ¥ã§æŽç"""
img = Image.open(photo_path)
exif = img.getexif()
# æ®åœ±æ¥ãååŸ
for tag, value in exif.items():
if TAGS.get(tag) == "DateTime":
date = datetime.strptime(value, "%Y:%m:%d %H:%M:%S")
folder = f"Photos/{date.year}/{date.month:02d}"
# ãã©ã«ãäœæãšç§»åãããžã§ã¯ãå¥ã®èªåæ¯ãåã
# ãã¡ã€ã«åã®ãã¿ãŒã³ãããã³ã°ã§æ¯ãåã
if "ãããžã§ã¯ãA" in filename:
destination = "Projects/ProjectA"
elif "è«æ±æž" in filename:
destination = "Finance/Invoices"ã¯ã©ãŠãã¹ãã¬ãŒãžãšã®åæ
# OneDriveãGoogle Driveãšé£æº
import subprocess
def sync_to_cloud(local_folder, cloud_folder):
"""ã¯ã©ãŠããšåæ"""
subprocess.run(["robocopy", local_folder, cloud_folder, "/MIR"])ð é¢é£èšäº
ä»åã®å 容ã«é¢é£ããéå»èšäºããã²ã芧ãã ããïŒ
é¢é£èšäº: Claude Desktopã®MCPã§äººçå€ãã£ã話 - filesystemç·šã§ã¯ãfilesystem MCPã®åºæ¬çãªäœ¿ãæ¹ã詳ãã解説ããŠããŸãã
ð ãŸãšã
鱿«ã®2æéãæè³ããããšã§ïŒ
â 500åã®ãã¡ã€ã«ã15ã«ããŽãªã«èªååé¡
â ãã¡ã€ã«æ€çŽ¢æéã90%åæžïŒ5åâ30ç§ïŒ
â éè€ãã¡ã€ã«ã23ååé€ããŠå®¹é30%è§£æŸ
â æ¯é±èªåã§æŽçãããä»çµã¿ãæ§ç¯
â 幎é96æéïŒæ8æéÃ12ã¶æïŒã®æéåµåº
ããã€ãæŽçãããããšæã£ãŠãããªãããã®é±æ«ããã£ã³ã¹ã§ãïŒ2æéã®æè³ã§ãä»åŸã®äœæ¥å¹çãåçã«åäžããŸãã
ð æ¬¡åäºå
ææ¥Day73ã¯æ¥ææ¥ïŒãAIãšäžç·ã«äœã鱿«ã¯ãªãšã€ãã£ããããžã§ã¯ããããå±ãããŸããæŽçãããã¡ã€ã«ã䜿ã£ãŠãäœãåµé çãªãã®ãäœã£ãŠã¿ãŸãããïŒ
ðš ããŸãïŒèŠåºãç»åäœæããã³ãã
仿¥ã®èŠåºãç»åã®ããŒã¹ã¯ãã£ãããŒïŒChatGPTïŒã«äžèšããã³ããã§äœæããŠããããŸããïŒïŒ
詳现ãªã¢ãã¡ã®çŸæèã®ç»åãäœæããŠãã ããã衚æ
è±ããªç³ããªããããªç¶²æãã»ã«ã®è²äœ¿ããã¯ã£ããããç·ç»ã䜿çšããŸããã¢ãã¡ã®ã·ãŒã³ã«å
žåçãªèº«ã¶ããšé°å²æ°ã§ãå¿æ
ãšç»å Žäººç©ã®ååšã匷調ããŠãã ããã
æãããªç
§æã§æ®åœ±ãããè¶
çŸå®çã§ãããã§ãã·ã§ãã«ãªåçãäœæããŠãã ããã
äžèšæ¡ä»¶ã®noteèŠåºãç»åããµã€ãºã¯æšªé·ã§äœæããŠãã ããããµã€ãºã¯å¿
ãæšªé·ã§äœæããŠãã ããã
## ðš èŠåºãç»åæ¡
### ãã¶ã€ã³ã³ã³ã»ãã
- **èæ¯**: éããç·ãžã®ã°ã©ããŒã·ã§ã³ïŒæŽçæŽé ãšæé·ã®ã€ã¡ãŒãžïŒ
- **ã¡ã€ã³ããžã¥ã¢ã«**: æ£ããã£ããã¡ã€ã«ã¢ã€ã³ã³ããæŽçããããã©ã«ãã«å€åããæ§åãã€ã©ã¹ãã§è¡šçŸ
- **ããã¹ãèŠçŽ **:
- äžéšïŒã鱿«2æéã§å®çµïŒãïŒçœæåã倪åïŒ
- äžå€®ïŒPCãã¡ã€ã«æŽçã®ããã©ãŒã¢ãã¿ãŒå³è§£
- äžéšïŒã500ãã¡ã€ã«â15ã«ããŽãªãïŒæ°åã倧ããïŒ
- **è£
食**:
- å·ŠåŽïŒæ£ä¹±ãããã¡ã€ã«ã¢ã€ã³ã³
- äžå€®ïŒå€§ããªç¢å°
- å³åŽïŒæŽçããããã©ã«ãæ§é
- ãã©ãã©ãšãã§ã¯ãã§éææãæŒåº
### äœææé
1. ã¹ã©ã€ããµã€ãºïŒ1536Ã1024pxïŒ
2. éâç·ã®ã°ã©ããŒã·ã§ã³èæ¯ãèšå®
3. ãã¡ã€ã«æŽçã®ããã©ãŒã¢ãã¿ãŒå³ãäžå€®ã«é
眮
4. ã鱿«2æéã§å®çµïŒããäžéšã«å€§ããé
眮
5. æ°åïŒ500â15ïŒãç®ç«ã€ããã«åŒ·èª¿
6. YaroTechããŽãå³äžã«12ptã§æ§ããã«é
眮çããããã²ãæ£ããã£ãPCãã¡ã€ã«ãæŽçããŠãã¹ãããªãã鱿«ãéãããŠãã ããïŒ
ããã§ã¯ããŸãææ¥ãäŒãããŸãããïŒð
#YaroTech #ãã¡ã€ã«æŽç #鱿«ãããžã§ã¯ã #AIæŽ»çš #çç£æ§åäž #ClaudeDesktop #Python #èªåå #ããžã¿ã«æŽç #æçè¡