Batch
Batch - kopia zapasowa pliku
@echo off if exist plik.txt goto jestplik :goto koniec :jestplik if exist plik.bak del plik.bak copy plik.txt plik.bak > null :koniec
Podstawowe polecenia plików batch
Zasady budowy batch'a: - każda nowa linia jest nowym poleceniem - komentarze poprzedzone słowem rem - %0 zmienna odpowiadająca nazwie pliku batch'a - %1 .. %n zmienne odpowiadające argumentom wywołania batch'a @echo off - wyłączanie wszelkich komunikatów echo napis - wyświetla słowo napis echo napis1 napis2 - wyświetla słowo napis1 i napis2 cls - czyści ekran @echo on - włącza komunikaty dir > null - przekierowanie strumienia wyjściowego na null (śmietnik) pause - program będzie czekał na naciśnięcie dowolnego klawisza rem - linia z komentarzem call - chwilowe przekazanie rozkazu wykonania innemu programowi :etykieta - znacznik w programie goto etykieta - instrukcja skoku to etykiety if exist "%1" echo jest argument - sprawdzenie czy w wywołaniu batch'a pojawił sie argumetnt if "%a"=="%1" - porównanie 2 zmiennych set x=jakistext%dodatkowazmiennatextowa%znowtext - przypisanie do x tekstu set /a x=5 - przypisanie arytmetyczne
Batch - Łączenie plików tekstowych
np nazwa_programu plik1 plik2 plik3 zostnie połaczone : na poczatku plik1 potem plik2 i na końcu plik 3.
@echo off if exist "%1" goto ok1 goto blad :ok1 if exist "%2" goto ok2 goto blad :ok2 if exist "%3" goto allok goto blad :allok copy /b %1+%2+%3 pom > NULL copy /b pom %2 > NULL del pom goto koniec :blad echo blad wykonania batcha goto koniec :koniec
wykozystując batcha można zrobić zmiany w całym katalogu...
@echo off for %%i in (*.pas) do call p plik1.txt %%i plik2.txt
Batch - wypisuje zawartość pliku o ile ten istnieje
rem File Echo rem Program wypisuje zawartośc pliku o ile ten istnieje. cls @echo off if "%1"=="/?" goto skladnia if not "%1"=="" goto program goto koniec :program if exist "%1" goto istnieje if not exist "%1" goto nieistnieje goto koniec :istnieje echo Plik istnieje (oto jego zawartosc) type %1 goto koniec :nieistnieje echo Plik nie zostal odnaleziony goto koniec :skladnia echo program wypisujacy zawartosc pliku /skladnia/ : echo [program] [filename.ext] goto koniec :koniec
Batch - kasowacz plików
cls @echo off : start if "%1" == "/?" goto Informacja if "%1" == "" goto koniec del %1 shift goto start :informacja echo Batch %0 usuwa pliki goto skladnia :skladnia echo Skladnia polecenia: echo %0 [/?] plik1 plik 2 .... :koniec
Batch tworzy i włazi do kolejnych swoich podkatalogów
rem Tworzy i włazi do kolejnych swoich podkatalogów. @echo off if not exist a mkdir a if not exist "a\%0" copy %0.bat .\a cd a %0
2012.11.22 22:29:06.