এক ক্লিকে ডেস্কটপ বা ফোল্ডারে থাকা সব ফাইল আলাদা আলাদা ফোল্ডারে সাজিয়ে নিন — সহজ Batch File টুল
এক ক্লিকে ডেস্কটপ বা ফোল্ডারে থাকা সব ফাইল আলাদা আলাদা ফোল্ডারে সাজিয়ে নিন — সহজ Batch File টুল (One-Click File Organizer)
ভূমিকা
বিভিন্ন সময় আমরা অনেক ধরনের ফাইল (JPG, PNG, PDF, DOCX, EXE, ZIP ইত্যাদি) অনায়াসে ডাউনলোড করে অথবা কাজের ফাইল রাখি। ফলাফল: ডেস্কটপ বা কোনো ফোল্ডার দ্রুত এলোমেলো হয়ে যায়। ম্যানুয়ালি সব ফাইল সরাতে বেশ সময় লাগে। এই সমস্যা কাটাতে সহজ একটি সমাধান — Batch (.bat) ফাইল তৈরী করে এক ক্লিকে সব ফাইল তাদের এক্সটেনশান অনুযায়ী আলাদা ফোল্ডারে সরিয়ে দেয়া। নিচে পূর্ণ ধাপে ধাপে গাইড, নিরাপদ স্ক্রিপ্ট এবং কাস্টমাইজেশন দেখানো আছে।
কেন ব্যাচ ফাইল (Batch file) ব্যবহার করবেন?
* সহজ: কোনো অতিরিক্ত সফটওয়্যার লাগবে না — Windows-এ ডাবল ক্লিকেই চলে।
* দ্রুত: হাজারগুলো ফাইলকেও মুহূর্তে ক্লাসিফাই করে ফেলতে পারে।
* অফলাইন ও নিরাপদ: আপনার ফাইল কোথায় যাচ্ছে আপনি নিজেই কন্ট্রোল করবেন, কোনো ক্লাউড সার্ভিসের দরকার নেই।
সরাসরি ব্যাচ ফাইল — সহজ (বেসিক) ভার্সন
নিচের কোডটি কপি করে Notepad-এ পেস্ট করুন এবং FileOrganizer.bat নামে Save করুন (Save as type = All Files) — তারপর উক্ত ব্যাচ ফাইলটি যে ফোল্ডারে থাকবে সেটাই অর্গানাইজ হবে।
@echo off
REM --- Simple One-Click Organizer (basic) ---
for %%a in (*.*) do (
    if "%%~xa" NEQ "" if /I not "%%~nxa"=="%~nx0" (
        if not exist "%%~xa" mkdir "%%~xa"
        move "%%a" "%%~dpa%%~xa\"
    )
)
pause 
 
ব্যাখ্যা (সংক্ষেপে)
* for %%a in (*.*) — কারেন্ট ফোল্ডারের প্রতিটি ফাইল নির্বাচিত করে।* %%~xa — ফাইলের এক্সটেনশন (উদাহরণ: .jpg)।* if not exist "%%~xa" mkdir "%%~xa" — যদি সেই এক্সটেনশনের নামে ফোল্ডার না থাকে, তৈরি করবে।* move "%%a" "%%~dpa%%~xa\" — ফাইলকে ওই এক্সটেনশন নামের ফোল্ডারে সরাবে।* pause — কাজ শেষ হলে কনসোল খোলা থাকবে, ফলাফল দেখে Enter চাপলে বন্ধ হবে।নোট: উপরের কোডে ফোল্ডারের নাম হবে .jpg (ডটসহ)। আমরা নীচে ডট ছাড়া, স্পেস-সেফ ভার্সন দেব।
উন্নত (প্রোডাকশন) ভার্সন — স্পেস ও ডট-নাম সমস্যা মিটিয়ে, ব্যাচ ফাইলের লোকেশন অনুযায়ী কাজ করবে
নীচের স্ক্রিপ্টটি ব্যাবহার করলে ফোল্ডারের নাম হবে এক্সটেনশন ছাড়া (JPG, PNG, PDF ইত্যাদি) এবং স্পেসযুক্ত ফাইলনেমগুলোও ঠিকভাবে হ্যান্ডেল করবে। এছাড়া ব্যাচ ফাইল নিজেই মুভ ও নিজেই কাজ করে না এমন কন্ডিশন রাখা আছে।
----
@echo off
REM One-Click File Organizer — Improved Version
setlocal enabledelayedexpansion
REM Base folder is the folder where this .bat is located
set "BASE=%~dp0"
for %%F in ("%BASE%*") do (
    REM skip directories
    if not exist "%%~fF\" (
        REM skip the batch file itself
        if /I not "%%~nxF"=="%~nx0" (
            REM get extension without leading dot
            set "ext=%%~xF"
            if defined ext (
                set "ext=!ext:~1!"
                REM if extension string empty after removing dot, skip
                if not "!ext!"=="" (
                    REM make folder if not exist
                    if not exist "%BASE%!ext!\" mkdir "%BASE%!ext!"
                    move "%%~fF" "%BASE%!ext!\" >nul
                )
            )
        )
    )
)
echo Done organizing files by extension in "%BASE%"
pause
endlocal
কেন এই কোড ভালো?
 * set "BASE=%~dp0": ব্যাচ ফাইল যেখানে আছে, সেই লোকেশনকে বেস ধরে নেয়। অর্থাৎ আপনি ব্যাচ ফাইলটি কোনো ফোল্ডারে রেখে ডাবল-ক্লিক করলে সেটি ওই ফোল্ডার অর্গানাইজ করবে।
* if not exist "%%~fF\" — ফোল্ডারগুলোকে স্কিপ করে (অর্থাৎ কেবল ফাইল নিয়ে কাজ করবে)।* setlocal enabledelayedexpansion ব্যবহার করে ভেরিয়েবল সঠিকভাবে প্রসেস করা হয়েছে (স্পেস ও ডাইনামিক ভেরিয়েবল হ্যান্ডলিং)।
ফোল্ডার নাম ডট ছাড়া — উদাহরণ
উপরের স্ক্রিপ্টেই ফোল্ডার হবে jpg, pdf ইত্যাদি (ডট নেই)। যদি আপনি চান .jpg ফোল্ডার (ডটসহ), প্রথম প্রদত্ত বেসিক স্ক্রিপ্ট ব্যবহার করুন। পছন্দমত পরিবর্তন করুন।
কাস্টম রুল: নির্দিষ্ট টাইপ-ম্যাপিং (Images / Documents / Archives)
আপনার যদি ইচ্ছা থাকে যে ফাইলগুলো কেবল এক্সটেনশন অনুযায়ী না হয়ে Images, Documents, Archives, Software ইত্যাদি ফোল্ডারে যাবে — তাহলে নিচের স্ক্রিপ্ট ব্যবহার করুন:
@echo off
setlocal enabledelayedexpansion
set "BASE=%~dp0"
REM Define groups (add/remove extensions as you need)
set "IMAGES=jpg jpeg png gif bmp webp"
set "DOCS=doc docx pdf xls xlsx ppt pptx txt"
set "ARCHIVES=zip rar 7z tar gz iso"
set "APPS=exe msi"
set "OTHERS="
for %%F in ("%BASE%*") do (
    if not exist "%%~fF\" (
        if /I not "%%~nxF"=="%~nx0" (
            set "ext=%%~xF"
            if defined ext (
                set "ext=!ext:~1!"
                if not "!ext!"=="" (
                    set "moved=0"
                    for %%E in (%IMAGES%) do if /I "%%E"=="!ext!" (
                        if not exist "%BASE%Images\" mkdir "%BASE%Images"
                        move "%%~fF" "%BASE%Images\" >nul
                        set "moved=1"
                    )
                    for %%E in (%DOCS%) do if /I "%%E"=="!ext!" if "!moved!"=="0" (
                        if not exist "%BASE%Documents\" mkdir "%BASE%Documents"
                        move "%%~fF" "%BASE%Documents\" >nul
                        set "moved=1"
                    )
                    for %%E in (%ARCHIVES%) do if /I "%%E"=="!ext!" if "!moved!"=="0" (
                        if not exist "%BASE%Archives\" mkdir "%BASE%Archives"
                        move "%%~fF" "%BASE%Archives\" >nul
                        set "moved=1"
                    )
                    for %%E in (%APPS%) do if /I "%%E"=="!ext!" if "!moved!"=="0" (
                        if not exist "%BASE%Software\" mkdir "%BASE%Software"
                        move "%%~fF" "%BASE%Software\" >nul
                        set "moved=1"
                    )
                    if "!moved!"=="0" (
                        if not exist "%BASE%Others\" mkdir "%BASE%Others"
                        move "%%~fF" "%BASE%Others\" >nul
                    )
                )
            )
        )
    )
)
echo Done.
pause
endlocal
কাস্টমাইজেশন টিপস
* IMAGES, DOCS, ইত্যাদি ভেরিয়েবল গুলোতে আপনি নিজে কর প্রয়োজন অনুযায়ী এক্সটেনশন যোগ/কমাতে পারবেন।
* যদি আপনি .bat ফাইলটিকে বিভিন্ন ফোল্ডারে ব্যবহার করতে চান, প্রতিটি ফোল্ডারে ব্যাচ ফাইল কপি করে রাখুন অথবা একটি শেয়ারড লোকেশনে রেখে শর্টকাট (shortcut) ব্যবহার করুন।
নিরাপত্তা ও ব্যাকআপ পরামর্শ
1. প্রথমে সব সময় ব্যাকআপ রাখুন — বিশেষ করে বড় ফাইল বা গুরুত্বপূর্ণ ডকুমেন্টের।
2. নতুন স্ক্রিপ্ট চালানোর আগে একটি টেস্ট ফোল্ডারে ট্রায়াল চালান — এতে সমস্যা হলে সহজে ফিরিয়ে আনতে পারবেন।
3. যদি চান মুভ না করে কপি করবেন (move→copy), move কমান্ডের পরিবর্তে copy ব্যবহার করুন — পরে ম্যানুয়ালি পুরোনো ফাইল মুছতে পারবেন।
 4. ব্যাচ ফাইল নিজেই কোনো গুরুত্বপূর্ণ ফাইল মুভ না করে রাখতে চাইলে if /I not "%%~nxF"=="%~nx0" কন্ডিশনটি রাখা নিশ্চিত করুন — এটি ব্যাচ ফাইলকে নিজেকে মুভ করা থেকে রক্ষা করবে।
5. ইউজার পারমিশন: কিছু সিস্টেম ফাইল সরাতে গেলে প্রশাসনিক অনুমতি লাগতে পারে — সচেতন থাকুন।
কিভাবে ব্যবহার করবেন — ধাপে ধাপে (Quick Guide)
1. উপরের যে কোনো স্ক্রিপ্ট কপি করুন।
2. Notepad খুলে পেস্ট করুন।
3. File -> Save As → File name: FileOrganizer.bat (বা পছন্দমত নাম) → Save as type: All Files → Save.
4. যে ফোল্ডারটি অর্গানাইজ করতে চান সেখানে .bat ফাইলটি রেখে ডাবল-ক্লিক করুন।
5. স্ক্রিপ্ট রান হয়ে ফাইলগুলো আলাদা ফোল্ডারে চলে যাবে। যদি pause আছে তাহলে Enter চাপলে উইন্ডো বন্ধ হবে।
One-Click File Organizer: Windows Batch File দিয়ে ডেস্কটপ পরিষ্কার করুন
সাধারণ প্রশ্ন (FAQ)
Q1: সব ফাইল এক্সটেনশন আলাদা করে ফোল্ডারে যাবে কি?
A: হ্যাঁ — বেসিক স্ক্রিপ্টে প্রতিটি এক্সটেনশন অনুযায়ী একটি ফোল্ডার তৈরি হবে এবং ফাইলগুলো সেখানে মুভ হবে। উন্নত স্ক্রিপ্টে ডট ছাড়া ফোল্ডার নাম ব্যবহৃত হবে (উদাহরণ: jpg নয় .jpg)।
Q2: ফাইলগুলো মুছে যাবে না তো?
A: move কমান্ড ফাইলগুলো নতুন ফোল্ডারে সরায়; মুছে দেয় না। যদি কোনো কারণে ভুল হয়, তখন আপনি ফোল্ডারে গিয়ে ফাইলগুলো পুরনো অবস্থায় পাবেন। সত্যিই নিরাপদ রাখতে copy ব্যবহার করুন, পরে পুরোনোগুলো মুছে দিন।
Q3: সাব-ফোল্ডারের ভিতরের ফাইলও অর্গানাইজ করা হবে?
A: উপরের স্ক্রিপ্টগুলো কেবল বর্তমান ডিরেক্টরির সরাসরি ফাইলগুলো নিয়েই কাজ করে (সাবফোল্ডারগুলিকে স্কিপ করে)। যদি রিকার্সিভলি (সাবফোল্ডারসহ) কাজ করতে চান, সেটাও করা যায় — তবে একটু সতর্ক থাকতে হবে যাতে ফোল্ডার-স্ট্রাকচার নষ্ট না হয়। দরকার হলে আমি ওই রিকার্সিভ স্ক্রিপ্টও দিতে পারি।
Q4: আমি কি নির্দিষ্ট এক্সটেনশন ছাড়া সবগুলো মুভ করতে চাইলে?
A: হ্যাঁ, স্ক্রিপ্টে কন্ডিশন যোগ করে আপনি নির্দিষ্ট এক্সটেনশন বাদ দিতে পারবেন (উদাহরণ: .sys, .dll ইত্যাদি সিস্টেম ফাইল বাদ রাখা)।
এই পদ্ধতিতে আপনি কয়েক সেকেন্ডে একটি এলোমেলো ডেস্কটপকে সুন্দরভাবে শ্রেণীবদ্ধ করে ফেলতে পারবেন। প্রয়োজনে আমি আপনাকে রিকার্সিভ ভার্সন, নির্দিষ্ট এক্সটেনশন বাদ/শুধু নেওয়া, অথবা টাইম স্ট্যাম্প/লোকেশন অনুযায়ী সাবফোল্ডার তৈরির কোডও দিই।
Meta Keywords : batch file organizar files, organize files by extension windows, ডেস্কটপ ক্লিন আপ টিপস, এক ক্লিক ফাইল অর্গানাইজার
Keywords:
ফাইল অর্গানাইজার, batch file, ডেস্কটপ ক্লিন আপ, এক ক্লিক ফাইল সাজানো, Windows batch organize files, ফাইল এক্সটেনশন অনুযায়ী সাজান
এক ক্লিকে JPG, PNG, PDF, DOCX, EXE ইত্যাদি সব ফাইল আলাদা ফোল্ডারে ভাগ করে দেয় এমন সহজ এবং নিরাপদ ব্যাচ ফাইল তৈরির পূর্ণ গাইড। কোড, ব্যাখ্যা, এবং কাস্টমাইজেশন টিপসসহ — কোনো প্রোগ্রামিং জ্ঞান ছাড়াই করুন ফাইল অর্গানাইজিং।



No comments