Pretraga

Loading

ponedjeljak, 21. veljače 2011.

Što je *.bat datoteka?

Mnogi misle da je .bat (batch) datoteke teško programirati i da to ne treba nikome. .bat datoteke nam mogu uvelike olakšati poslove, a pogotovo one koje stalno ponavljamo. Mogu biti napisane za veoma komplicirane radnje, ali i za neke veoma jednostavne koje nam uveliko olakšavaju rad sa računalom.





.bat datoteke su obične tekstualne datoteke koje sadrže naredbe koje je potrebno izvršiti jednu poslije druge. Naredbe upisane u .bat datoteku se izvršavaju kroz Windows Command Prompt (CMD). Da bi napravili .bat datoteku potrebno je otvoriti tekst editor (npr. Notepad) i upisati naredbe koje se trebaju izvršiti. Naredbe su veoma jednostavne i čitljive. Nakon što smo upisali naredbe, datoteku spremam sa nastavkom (ekstenzijom) .bat te odaberemo opciju Save as type: All files (*.*)
Spremljenu datoteku pokrećemo dvostrukim klikom te s time automatski pokrećemo izvršavanje naredbi napisanih u njoj. Ako program ne izvršava naredbu kako bi trebao moguće ga je pokrenuti i preko Command prompt-a. Prednost ovakvog pokretanja je to što ćemo vidjeti u čemu je greška.

Za detaljnije upute i primjere naredbi preporučam slijedeće stranice za vas:
http://www.computerhope.com/batch.htm
Također Googl je vaš prijatelj. Ako mislite da postoji rješenja za vaš problem upišite „Batch file for ……..“

I sam sam izradio 3 korisna alata pomoću bat naredbi te naišao na pokoji problem.
Pošto koristim više računala uglavnom sva na windows 7 operativnom sustavu te jedno na Windows XP, mogao sam primijetiti razlike pri kreiranju bat datoteka. Naime Windows XP operativni sustav uopće nema jedan veoma koristan alat koji se zove forfiles. Forfiles je procedura ili naredba u bat datotekama koja između ostalog omogućava procesuiranje velikog broja datoteka. Osim forfiles naredbe postoje i neke sitne razlike u pozivanju pojedinih naredbi te se mogu razlikovati ovisno o operacijskom sustavu koji koristite. Ne garantiram za ispravnost programa u ostalim operativnim sustavima ali unutar Windows 7 32bit rade savršeno.

Za popis naredbi u Windows XP sustavu:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ntcmds.mspx?mfr=true

Za popis naredbi u Windows 7 sustavu:

1. Program - Brisanje velikog broja starih datoteka i mapa

Pomoću ove bat datoteke možete izbrisati datoteke i mape starije od :n dana iz :x mape. Ovaj program može biti iznimno koristan ako se želimo riješiti velikog broja starih mapa i datoteka. Program radi tako da pretražuje datum zadnje promjene datoteke i mape unutar mape (foldera) koje smo postavili te svih podmapa unutar njega. Ako je mapa ili datoteka starije odnosno ako joj je zadnji datum promjene stariji od broja dana koje smo upisali mapa ili dokument će biti trajno obrisana te ju nećemo moći pronaći niti u Recycle Bin-u.

Kako bi program pravilno funkcionirao potrebno je zamijeniti :x sa putanjom (odredištem) vaše mape te :n sa brojem dana starosti nekog dokumenta. Kako biste editirali program stisnite desni klik na njega te edit. Ne zaboravite spremit promjene.

Na primjer:

za :x treba staviti c:/mapa/podmapa
sve datoteke i mape koje odgovaraju starosti u mapi podmapa će biti obrisane.

za :n treba staviti 91
sve datoteke i mape koje nisu ažurirane u posljednjih 91 dan biti će obrisane

Kod bat datoteke:

forfiles /p :x /s /d -:n /c "cmd /c if @isdir==TRUE rmdir /s /q @Path"

primjer datoteke možete skinuti ovdje

      2. Program - Mijenjanje ekstenzija velikom broju datoteka

Ovaj program mijenja ekstenziju velikom broju datoteka unutar jedne mape (foldera) sa opcijom upisa ekstenzije koje želimo promijenit te ekstenzije u koju želimo promijenit dokumente te sa opcijom zadržavanja originalnih dokumenata.

Napomena: Obavezno prije pokretanja smjestite program u mapu u kojoj se nalaze dokumenti kojima želite promijeniti ekstenziju. Program ne djeluje na podmape nego samo na mapu u kojoj se nalazi.

Kod:

@echo off
title Extension changer
:start
echo This tool can convert large number of files into
echo the extension defined by the user
echo Put this program to folder in which are your files
echo Curent folder is %CD%
set /p ex1= Extesion you wont to change:
set /p ex2= To extension:
set /p ans= Do you wont to keep original files? It is recomended!(y/n):
if /i %ans%==y goto A
if /i %ans%==n goto B
:A
if /i %ans%==y xcopy *.%ex1% *.%ex2%
echo All done check your files!
goto start
:B
if /i %ans%==n rename *.%ex1% *.%ex2%
echo All done check your files!
goto start

Program možete skinuti ovdje ExtensionChanger.bat

       3. Program – Popis datoteka

Ovo je program kako mu i sam naziv kaže radi popis datoteka unutar mape u kojoj se nalazi te njegovim podmapama. Nakon što se program izvrši stvara tekstualnu datoteku „popis.txt“ u koju upisuje nazive svih datoteke u glavnoj mapi te podmapama.

Napomena: Ako unutar mape postoje puno dokumenata moguće je čekati do par sekundi. Za 2000 dokumenata potrebno je oko 5-10 sekundi. Ne gasite program sve dok ne završi, program će se sam ugasiti.

Kod:

forfiles /p %CD% /s /c "CMD /c echo @path >> %CD%\popis.txt"

Program može skinuti ovdje Popis datoteka.bat

Nema komentara:

Objavi komentar