Imię i nazwisko: | Rafał Miękina | Klasa: | 2 „TI” |
---|---|---|---|
Przedmiot: | Systemy Operacyjne i Sieci Komputerowe | Data: | 08.10.2010r. |
Temat pracy: | Projekt pt: „MS-DOS - Ćwiczenia” | ||
Prowadzący: | mgr inż. Marcin Pachowicz |
@echo off
cls
echo Czesc. Witaj na kursie gotowania
pause
Wypisało tą część pomiędzy Komedami „echo” a „pause”
@echo off
cls
echo Czesc %1. Witaj na kursie gotowania
pause
Także wypisało tą część z pomiędzy tych komend, oprócz „%1”.
W miejsce „%1”wpidało słowo „Darek”, tak jak wpisałem po wywołaniu pliku.
Teraz wypisało całe wyrażenie „„Darek Kowalski””, także tak jak wpisałem w wywołaniu.
Wypisało samo słowo „Darek”, gdy podałem „Darek Kowalski”, ale tak się stało gdyż „%1” wypisuje tylko pierwszy argument, a tak jak było poprzednio to w cudzysłowu bierze pod uwagę jako jedno.
@echo off
cls
echo Czesc %1 %2. Witaj na kursie gotowania
pause
Gdy dodałem do pliku jeszcze „%2” to wypisało oba argumenty.
@echo off
cls
set imie= Darek
set nazwisko= Kowalski
echo Czesc %imie% %nazwisko%. Witaj na kursie gotowania.
pause
Wypisało podany wyżej komunikat.
@echo off
cls
set imie= %1
set nazwisko= %2
echo Czesc %imie% %nazwisko%. Witaj na kursie gotowania.
pause
Wpisało to samo, tylko było inne wywołanie pliku.
@echo off
cls
set Imie= Darek
set imie= Jarek
set IMIE= Maciek
echo %Imie% %imie% %IMIE%
pause
Wypisało trzy razy imię „Maciek”.
cls
echo Komputer: %COMPUTERNAME%
echo Użytkownik: %USERNAME%
echo Domena NETBIOS: %USERDOMAIN%
echo omena internetowa: %USERDNSDOMAION%
echo Serwer logowania: %LOGONSERVER%
pause
Wypisało te dane komputera, które były w tym pliku.
@echo off
cls
set
pause
Pojawił się taki komunikat.
@echo off
cls
set > zmienne.txt
pause
Wypisało to samo, co w poprzednim ćwiczeniu, tylko nie w oknie w oknie DOSu tylko w nowym pliku notatnika o nazwie „zmienne.txt”.
@echo off
cls
set Imie1=Darek
set imie2=DAREK
set IMIE3=Darek
if NOT %imie1%==%imie2% echo To jest prawda pierwsza, ze %Imie1% nie jest rowne %imie2%
if %imie1%==%imie3% echo To jest prawda druga, ze %imie1% = %imie3%
if /i %imie2%==%imie3% echo To jest rawda trzecia, ze %Imie2% = %imie3% gdy nie biore pod uwage wielkosci znakow
pause
Wypisało mi to, co widać wyżej.
@echo off
cls
set nazwa_pliku=lista.txt
if exist %nazw_pliku% echo Plik %nazwa_pliku% istnieje
pause
Wypisało, iż plik istnieje.
@echo off
cls
set nazwa_pliku=lista10.txt
if exist %nazwa_pliku% (echo Plik %nazwa_pliku% istnieje) ELSE (echo Plik %nazwa_pliku% nie istnieje)
pause
Nie było takiego pliku i wypisało, że go nie ma.
@echo off
cls
set liczba1=123
set liczba2=00008
if %liczba1% GTR %liczba2% echo Liczba1 (%liczba1%) jest większa od Liczba2 (%liczba2%)
pause
@echo off
cls
:etykieta1
echo Zadania dla dyrektora: Oglosic dzien sportu
:etykieta2
echo Zadanie dla nauczyciela WF: Przygotowac boisko na dzień sportu
:etykieta3
echo Zadanie dla uczniow: Bawic sie dobrze w diu sportu
pause
Napisało to, co widać powyżej.
@echo off
cls
GOTO etykieta2
:etykieta1
echo Zadania dla dyrektora: Oglosic dzien sportu
:etykieta2
echo Zadanie dla nauczyciela WF: Przygotowac boisko na dzień sportu
:etykieta3
echo Zadanie dla uczniow: Bawic sie dobrze w diu sportu
pause
Wypisało dopiero od drugiego argumentu.
@echo off
cls
GOTO etykieta2
:etykieta1
echo Zadania dla dyrektora: Oglosic dzien sportu
GOTO etykieta_koniec
:etykieta2
echo Zadanie dla nauczyciela WF: Przygotowac boisko na dzień sportu
GOTO etykieta_koniec
:etykieta3
echo Zadanie dla uczniow: Bawic sie dobrze w diu sportu
GOTO etykieta_koniec
:etykieta_koniec
pause
Wypisało tylko drugi argument.
@echo off
cls
set nazwa_uzytkownika="Jan Kowalski"
if/i %nazwa_uzytkownika%=="jan kowalski" GOTO etykieta1
if/i %nazwa_uzytkownika%=="marysia" GOTO etykieta2
GOTO etykieta2
:etykieta1
echo Zadania dla dyrektora: Oglosic dzien sportu
GOTO etykieta_koniec
:etykieta2
echo Zadanie dla nauczyciela WF: Przygotowac boisko na dzień sportu
GOTO etykieta_koniec
:etykieta3
echo Zadanie dla uczniow: Bawic sie dobrze w diu sportu
GOTO etykieta_koniec
:etykieta_koniec
pause
Wypisało pierwszą etykietę.
@echo off
cls
FOR %%w IN (pomidor, rzotkiewka, ziemniak) DO echo To jest %%w
pause
Wypisało każdy argument z nawiasu w osobnej linijce i z początkiem „To jest…”.
@echo off
cls
FOR %%w IN (garnek, patelnia) DO (
FOR %%w IN (pomidorek, rzodkiewka, ziemniakem, burakiem) DO echo To jest %%w
)
pause
Zrobiło to sam, czyli wypisało te warzywa w ten sam sposób.
@echo off
cls
FOR %%a IN (0 1 2 3) DO (
FOR %%b IN (1 2 3 4 5 6 7 8 9) DO echo %%a%%b
)
pause
Wypisało liczby od 01 do 39.
@echo off
cls
echo Start > wynik.txt
FOR %%a IN (0 1 2 3) DO (
FOR %%b IN (0 1 2 3 4 5 6 7 8 9) DO (
FOR %%c IN (0 1 2 3 4 5 6 7 8 9) DO (
echo %%a%%b%%c >>wynik.txt
)
)
)
pause
W pliku tekstowym wynik.txt wypisało słowo „Start” oraz liczby od 000 do 399.
@echo off
cls
echo Start > wynik.txt
FOR %%a IN (0 1 2 3 4 5) DO (
FOR %%b IN (0 1 2 3 4 5 6 7 8 9) DO (
FOR %%c IN (0 1 2 3 4 5 6 7 8 9) DO (
IF %%a%%b%%c LEQ 400 (echo %%a%%b%%c >>wynik.txt)
)
)
)
pause
Wypisało tak samo jak poprzednio, lecz do liczby 400.
@echo off
cls
echo Start > wynik.txt
FOR %%a IN (0 1 2 3 4 5) DO (
FOR %%b IN (0 1 2 3 4 5 6 7 8 9) DO (
FOR %%c IN (0 1 2 3 4 5 6 7 8 9) DO (
IF %%a%%b%%c GTR 0 IF %%a%%b%%c LEQ 375 (echo %%a%%b%%c >>wynik.txt)
)
)
)
pause
W ten sam sposób wypisało liczby od 001 do 375.
@echo off
cls
FOR /L %%a IN (5,1,25) DO echo %%a
pause
W ekranie DOSu wypisało liczby od 5 do 25.
@echo off
cls
FOR /L %%a IN (25,-3,1) DO echo %%a
pause
W oknie DOSu wypisało liczby od 25 malejąco, co 5 do 1.
@echo off
cls
FOR /F %%a IN (lista.txt) DO echo Plik zawiera takie wiersze %%a
pause
Wpisało imiona znajdujące się w pliku „lista.txt” a przed nimi wyrażenie: „ Plik zawiera takie wiersze…”
@echo off
cls
FOR /F "delims=;" %%a IN (lista2.txt) DO echo Plik zawiera takie wiersze %%a
pause
Powstał ten sam efekt, lecz dodało jeszcze nazwiska.
@echo off
cls
FOR /F "delims=; toknes=1,2" %%a IN (lista3.txt) DO echo Plik zawiera takie wiersze imie %%a nazwisko %%b
pause
Wypisało dodatkowo wyrazy „imie” i „nazwisko” przed imieniem oraz nazwiskiem.
@echo off
cls
FOR /R %%b IN (klasa*.txt) DO echo Znaleziono pliki wg maski klasa*.txt to %%b
pause
Wypisało taki komunikat, oraz podało ścieżkę do tego pliku, który przed chwilą utworzyłem.
@echo off
cls
FOR /R %%b IN (klasa*.txt) DO (
FOR /F "delims=;" %%a IN (%%b) DO echo Plik %%b zawiera %%a
)
pause
Wypisało wszystkie wiersze z tego pliku.
@echo off
cls
echo Witaj Agencie %1
echo Zgaduje ze masz na nazwisko %2
pause
Wypisało powyższy komunikat.
Wypisało ten sam komunikat, lecz błędnie.