plik


****************************** * KURS PROGRAMOWANIA * * * * BATCH FILE PROGRAMING * * * * POZIOM PODSTAWOWY * * * * Copyright (C) by Otul 2002 * * * * otul2@poczta.onet.pl * * * * www.otul.prv.pl * ****************************** Witam wszystkich w moim kursie o batchu, niektórzy spotykają się ze mną już po raz trzeci. Znowu życzę przyjemnej edukacji i przepraszam za wszelkiego rodzaju błędy. 1.WSTĘP Dlaczego w trzecim kursie opisałem najprostszy ze skryptów - Batch`a? Zobaczymy: Zalety: -nie wymaga specjalnych kompilatorów i linkerów, wystarcza Command.com -command.com posiada prosty debugger -posiada proste komendy -umożliwia proste kopiowanie, przenoszenie, usuwanie ... plików itp. Wady: -małe możliwości -w nowych systemach takich jak np. Windows XP czy Windows 2000 nie chodzi poprawnie bądź wcale -prosty do rozpracowania kod źródłowy(nawet po konwersji na COM`a) Koniec paplaniny, przejdźmy do konkretów! :-) 2.PIERWSZY KROK (a raczej drugi) Zanim poznamy komendy i ich znaczenie chciałem przedstawić zasady programowania w tym języku i ogólne zasady konstrukcji linii. -Tworzenie skryptu Skrypt musi posiadać nazwę(max 7 znaków) i rozszerzenie BAT np. Otul.bat Edycji można dokonywać Editem czy Notatnikiem. -Pisanie komend Zazwyczaj piszemy jedną komendę w lini i kończymy tę linię ENTEREM. echo off cls ... Linię możemy rozbudować poprzez operatory kierowania '>>' i '>' oraz '|'. echo Cześć >dane.txt echo Cześć OTUL >>dane2.txt mem | find "XMS" >pamiec.txt Każdą linię możemy ukryć przed wyświetleniem pisząc przed nią rem(komentarz) rem To jest komentarz do programu - KOMENDY ECHO echo tekst - wyświetla tekst echo. - wyświetla pustą linię echo off - powoduje wstrzymanie wyświetlanie komend i ścieżek dostępu na ekranie echo on - powoduje włączenie wyświetlania komend i ścieżek dostępu na ekranie echo teskt >plik.txt - zapisuje tekst do pliku plik.txt echo tekst >>plik.txt - dopisuje tekst do pliku plik.txt CLS cls - czyści ekran REM rem komentarz - umożliwia wprowadzenie komentarza do skryptu PAUSE pause - wstrzymuję pracę programu do czasu naciśnięcia dowolnego klawisza i wyświetla taką informację: "Naciśnij dowolny klawisz, aby kontynuować..." lub "Stike any key when ready..." pause >nul - to samo co powyżej, lecz bez tekstu CALL call program - pozwala wywołać inny skrypt bat lub program nie przerywając działania bieżącego GOTO goto otul - skocz do etykiety otul (etykietę oznacza się przez dodanie : np. :Otul) SET set x=otul - ustaw zmienną x jako otul IF if "%1"=="otul" goto ok - jeżeli parametr 1 równy jest otul to skocz do etykiety ok if "%x%"=="otul" goto ok - jeżeli zmienna x równa jest otul to skocz do etykiety ok if errorlevel 1 goto ok - jeżeli wystąpił błąd równy 1 to skocz do etykiety ok if exist otul.txt goto ok - jeżeli istnieje plik otul.txt to skocz do etykiety ok (można także dodać do warunków operator negacji [not] tzn. jeżeli jest nierówne to zrób coś) if not exist otul.txt goto ok - jeżeli nie istnieje otul.txt to skocz do etyk. ok MD i RD md otul - tworzy katalog otul rd otul - usuwa pusty katalog otul CD cd otul - wchodzi do katalogu otul cd.. - wychodzi o jedne poziom do góry cd\ - wychodzi do głównego katalogu DEL i ERASE del otul.txt - usuwa plik otul.txt erase otul.txt - usuwa plik otul.txt (jest to inna nazwa komendy) DELTREE deltree c:\otul - usuwa katalog otul wraz z jego zawartością FORMAT format c: {parametry} - formatuje dysk c parametry: /q - szybkie /u - bezwarunkowe, całkowite /s - systemowe(przenosi system) DIR dir {parametry} - wyświetla pliki w bieżącym katalogu dir c:\windows {parametry} - wyświetla pliki we wskazanym katalogu (tutaj windows) parametry: /p - stopuje ekran po wypełnieniu /v - tryb pełny /o'x' - sortowanie według: n - nazw(alfabetycznie) s - rozmiaru e - rozszerzenia d - daty i godziny g - po katalogach COPY copy c:\otul\otul.txt C:\oc - kopiuje plik otul.txt z podanej ścieżki do katalogu podanego w drugiej ścieżce copy otul.txt+otul2.txt otuloc.txt - łączy dwa pliki w jeden parametry: /v - weryfikuje poprawność zapisu plików /y - powoduje automatyczne nadpisywannie plików RENAME ren c:\otul\otul.txt otul2.txt - zmienia nazwę pliku otul.txt na otul2.txt MOVE move c:\otul\otul2.txt C:\otul3.txt - przenosi plik otul2.txt do katalogu c i zmienia nazwę na otul3.txt DATE i TIME date - wyświetla aktualną datę, pozwala wprowadzić nową time - wyświetla aktualny czas, pozwala wprowadzić nowy VER i VOL ver - wyświetla nazwę i wersję aktualnie zainstalowanego systemu operacyjnego vol c: - wyświetla informacje o woluminie dysku c LABEL label c: OTUL - zmienia etykietę dysku c na Otul Na początek wystarczy Ci tych komend, użyjmy ich teraz!!! 3.PRZYKŁADY Przedstawię poniżej przykładowe programy, nie będę ich opisywał, pozostawiam to tobie - programisto :-) . APPLE @echo off cls echo ŰŰ echo ŰŰŰŰ echo Ű echo ŰŰŰŰŰŰŰŰ Robak idzie do jabłka! echo ۱±±±±±±±±Ű echo ۱±±±˛˛˛±±±±Ű ŰŰŰ echo ۱±±±˛˛˛˛˛±±±±Ű ŰŰŰŰŰ ŰŰŰ echo ۱±±±±˛˛˛±±±±±Ű ŰŰŰŰ ŰŰŰ ŰŰŰ ŰŰŰ echo ۱±±±±±±±±±±Ű O ŰŰŰŰŰŰŰŰŰŰŰŰŰ ŰŰŰŰŰŰŰŰŰŰŰŰŰŰŰ echo ۱±±±±±±±±Ű @ ŰŰŰŰŰŰŰŰŰŰŰŰ ŰŰŰŰŰŰŰŰŰŰŰŰŰ echo ۱±±±±±Ű ßßßßß echo ۱±±±Ű echo ŰŰŰŰ pause HACKER COMPUTER @echo off :menu cls echo. echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» echo ş @@@@@@@@@@@ Hacker Computer ş echo ş @ H H @ Presents: ş echo ş @ HHH @ ş echo ş @ H H @ "HACKERS ANIM" ş echo ş @ @ (R) ş echo ş @ @ ş echo ş @ Copyright(C) by OTUL! ş echo ČÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍĽ echo. echo MENU echo S-Start echo K-Koniec choice/c:sk/n /t:k,600 >nul if errorlevel 2 goto end if errorlevel 1 goto 1 :1 cls echo. echo ˛˛˛° echo ˛° ˛° echo ˛˛˛° echo ˛° ˛° echo ˛° ˛° echo. echo ˛˛˛° echo ˛° ˛° echo ˛˛˛° echo ˛° ˛° echo ˛° ˛° choice/c:a/n /t:a,1 >nul :2 cls echo. echo ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° echo ˛˛° ˛˛˛° echo ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° echo. echo ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° echo ˛˛° ˛˛˛° echo ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul :3 cls echo. echo ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛°˛° ˛° ˛° ˛° echo ˛˛° ˛˛° ˛˛˛° echo ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° echo ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° echo ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul 4: cls echo. echo ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul :5 cls echo. echo ˛° ˛° ˛˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛˛˛° ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul :6 cls echo. echo ˛° ˛° ˛˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛˛ ˛˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛°˛°˛° ˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul :7 cls echo. echo ˛° ˛° ˛˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛˛ ˛˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛°˛°˛° ˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛° ˛° ˛° ˛° ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul :8 cls echo. echo ˛° ˛° ˛˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛˛˛° ˛˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛˛ ˛˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛°˛°˛° ˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛˛° ˛˛° ˛° ˛° ˛° ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul :9 cls echo. echo ˛° ˛° ˛˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛˛˛° ˛˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛˛ ˛˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛°˛°˛° ˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛˛° ˛˛° ˛° ˛° ˛° ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul 10: cls echo. echo ˛° ˛° ˛˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛˛˛° ˛˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛˛ ˛˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛°˛°˛° ˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛˛° ˛˛° ˛° ˛° ˛° ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul 11: cls echo. echo ˛° ˛° ˛˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛˛˛˛° ˛° ˛°˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛˛° ˛° ˛° echo. echo ˛˛˛° ˛˛° ˛° ˛° ˛˛˛° ˛° ˛° ˛˛˛° ˛˛˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛˛ ˛˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛°˛°˛° ˛˛˛° ˛° ˛° ˛° ˛˛° ˛˛˛° echo ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛˛° ˛˛° ˛° ˛° ˛° ˛˛˛˛˛° ˛° ˛˛˛˛° ˛° ˛° choice/c:a/n /t:a,1 >nul echo. echo WRITEN BY: echo. echo ˛˛˛˛° ˛˛˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛° ˛° echo ˛° ˛° ˛° ˛° ˛° ˛° echo ˛˛˛˛° ˛° ˛˛˛˛° ˛˛˛˛° echo. pause >nul goto menu :end cls exit To już koniec przykładów, inne można zobaczyć i ściągnąć ze strony www.otul.prv.pl 4.ZAKOŃCZENIE Szkoda, że muszę kończyć już ten kurs, ale muszę powiedzieć jedno. Jeżeli dotarłeś do tego miejsca poprzez ciężką pracę i naukę to gratuluję Ci i mianuję Cię początkującym programistom - ogólnie. Batch był tylko namiastką prawdziwego programowania. Myślę, że kurs przydał się wam, do zobaczenia w następnym - dotyczącym C !!!

Wyszukiwarka

Podobne podstrony:
Bulha KrĂłtki Kurs Dezinformacji
Daj się poznać od najlepszej strony Krótki kurs autopromocji i lansu
krotki kurs WI wyklad 5
krotki kurs WI wyklad 3
Krotki kurs kosztorysowania

więcej podobnych podstron