โ ์ด์ ์ ๋๋ฒ๋ง ํ๋ก๊ทธ๋จ์ ์ด์ด์ ์์ฑ
| bat ํ์ผ ๋ง๋ค๊ธฐ (๋งค์ฐ ๊ฐ๋จํ ๋ฐฉ๋ฒ)
1. ๋ฉ๋ชจ์ฅ์ ์ด๊ณ ์๋ ๋ด์ฉ์ ์ ๋ ฅ:
@echo off
python "C:\Users\๋ด_ํด๋\python_test\rename_files.py"
pause
2. Rename.bat์ผ๋ก ์ ์ฅ (ํ์ผ ํ์์ .txt๊ฐ ์๋๋ผ .bat์ผ๋ก ๋ณ๊ฒฝ)
์ฃผ์ : batํ์ผ ์คํ๊ฒฝ๋ก์ ํ๊ธ์ด ์์ผ๋ฉด ์ธ์ฝ๋ฉ ์ค๋ฅ๋ก ๊ฒฝ๋ก๊ฐ ์ด์ํด์ง๊ธฐ ๋๋ฌธ์
txt์์ bat์ผ๋ก ๋ฐ๊ฟ๋ ์ธ์ฝ๋ฉ์ ๊ผญ ANSI๋ก ํจ
3. ๋ฐํํ๋ฉด์ ๋ฐ๋ก๊ฐ๊ธฐ ์์ด์ฝ ์์ฑ
- run_python.bat ํ์ผ์ ๋ง์ฐ์ค ์ฐํด๋ฆญ → ๋ฐ๋ก ๊ฐ๊ธฐ ๋ง๋ค๊ธฐ
- ์ํ๋ ์์ด์ฝ์ผ๋ก ๋ณ๊ฒฝ ๊ฐ๋ฅ (์์ฑ → ์์ด์ฝ ๋ณ๊ฒฝ)
| exe ํ์ผ ๋ง๋ค๊ธฐ (build)
0 . ์ฝ๋์ค๋น (bulid๋ก ๋ง๋ค์ด์ง exe์ ์ด๋ฆ๋ฐ๊ฟ ํด๋๊ฐ ๊ฐ์ ๊ณณ์ ์์ด์ผํจ < exe ์คํ์ ํด๋ ์๋ ์์ฑ๋จ)
import os
import sys
from datetime import datetime
# ํ์ฌ ์คํ ์ค์ธ ํ์ผ(.exe ๋๋ .py)์ด ์๋ ํด๋ ๊ฒฝ๋ก
base_dir = os.path.dirname(sys.executable) if getattr(sys, 'frozen', False) else os.path.dirname(os.path.abspath(__file__))
# ๋์ ํด๋ (์ด ํด๋ ์์ PNG ํ์ผ ์ด๋ฆ ๋ณ๊ฒฝ)
target_folder = os.path.join(base_dir, "name_change_pngs")
# ํด๋๊ฐ ์กด์ฌํ์ง ์์ผ๋ฉด ์์ฑ
if not os.path.exists(target_folder):
os.makedirs(target_folder)
# ํด๋ ๋ด ๋ชจ๋ PNG ํ์ผ ์ฐพ๊ธฐ
file_info = []
# ํ์ผ๋ค์ ์์ ์๊ฐ์ ๊ฐ์ ธ์์ ๋ฆฌ์คํธ์ ์ ์ฅ
for filename in os.listdir(target_folder):
if filename.endswith(".png"):
old_path = os.path.join(target_folder, filename)
# ์ซ์ ์ ๋์ฌ ์ ๊ฑฐ
new_filename = ''.join([char for char in filename if not char.isdigit() and char != '_'])
# ์ด๋ฆ ๋ณ๊ฒฝ ํ ํ์ผ์ด ์กด์ฌํ๋์ง ํ์ธ
if old_path != os.path.join(target_folder, new_filename):
new_path = os.path.join(target_folder, new_filename)
os.rename(old_path, new_path)
old_path = new_path # ์ด๋ฆ ๋ณ๊ฒฝ ํ ์๋ก์ด ๊ฒฝ๋ก๋ก ์
๋ฐ์ดํธ
# ์์ ์๊ฐ ๊ฐ์ ธ์ค๊ธฐ
modification_time = os.path.getmtime(old_path)
file_info.append((new_filename, modification_time, old_path))
# ์์ ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ํ์ผ๋ค์ ์ ๋ ฌ
file_info.sort(key=lambda x: x[1], reverse=True)
# ํ์ผ ๋ฒํธ ๋งค๊ธฐ๊ธฐ
for index, (filename, _, old_path) in enumerate(file_info, start=1):
new_filename = f"{index}_{filename}"
new_path = os.path.join(target_folder, new_filename)
# ์ด๋ฆ ๋ณ๊ฒฝ
if os.path.exists(old_path):
os.rename(old_path, new_path)
print(f"๋ณ๊ฒฝ ์๋ฃ: {filename} → {new_filename}")
else:
print(f"ํ์ผ์ด ์กด์ฌํ์ง ์์: {old_path}")
1. pyinstaller ์ค์น (VS Code ํฐ๋ฏธ๋ ๋๋ cmd์์ ์คํ)
pip install pyinstaller
2. Python ํ์ผ์ ์คํ ๊ฐ๋ฅํ EXE๋ก ๋ณํ
pyinstaller --onefile rename_RUN.py
3. dist/rename_files.exe ํ์ผ์ด ์์ฑ๋จ → ์คํ์ ์ด๋ฆ๋ฐ๊ฟ ํด๋ ์์ฑ๋๋ฏ๋ก ๊ฑฐ๊ธฐ์ ํ์ผ๋ฃ์ด์ ์ฌ์ฉ
ํผ์ ๊ฐ๋ณ๊ฒ ์ธ๊ฑฐ๋ผ๋ฉด exe bulid ๋ณด๋ค๋ .bat ์ถ์ฒ!
(์์ ํ ๋๋ง๋ค exe๋ค์ ๋ง๋ค์ด์ผํจ)
๐png์ด๋ฏธ์ง ๋๋ฒ๋ง.EXE๐