Cwiczenie 4 4 Przyklady skryptow id 594927

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

Laboratorium : SYSTEMY OPERACYJNE

1

Przyk ady

Przyk adowe skrypty w Windows 2000:

I. Chc c sobie odrobin

skomplikowa wy wietlanie

zawarto ci bie

cego

folderu zak adamy, e chcemy by skrypt wy wietli nam tylko pliki o rozszerzeniach
.bat i .cmd. Wykorzystamy do tego celu instrukcj

For w

poni szej postaci.

Dodatkowo wyniki wyszukiwania wy lemy do pliku wy.txt

for %%f in (*.cmd *.bat) do dir /b %%f >> wy.txt

Po uruchomieniu skryptu widzimy efekty jego dzia ania w wierszu polece , a

tego chcieliby my unikn

. Modyfikujemy wi c nasz skrypt dodaj c linie: @echo

off na jego pocz tku. Znak @ oznacza, e równie i samo polecenie echo off nie
b dzie widoczne. Poniewa u yli my symbolu >> przy przekierowaniu do pliku, to
za ka dym razem nasz plik wyj ciowy jest zwi kszany o nast pne dane. Je eli

chcemy tego unikn

, mo emy sprawdza na pocz tku czy istnieje taki plik, a

je eli tak to najpierw go usuniemy. Zrealizujemy to instrukcj If exist wy.txt del /P
wy.txt
. Prze cznik /P wymusza monitowanie o potwierdzenie usni cia pliku. Teraz
nasz skrypt wygl da nast puj co:

@echo off

If exist wy.txt del /P wy.txt

for %%f in (*.cmd *.bat) do dir /b %%f >> wy.txt

Teraz dodamy odrobin interakcji, tzn. sami b dziemy okre la do jakiego pliku

b dziemy zapisywa wyniki. Realizujemy to zmieniaj c nazw pliku - wy.txt nazw
argumentu z jakim b dziemy wywo ywa skrypt: %1.

@echo off

If exist %1 del /P %1

for %%f in (*.cmd *.bat) do dir /b %%f >> %1

Na koniec wykorzystamy mo liwo ci przetwarzania potokowego. Otó nasz plik

wyj ciowy posortujemy wed ug kolejno ci alfabetycznej i zapiszemy go do
nast pnego pliku, którego nazw podamy jako drugi argument. Realizujemy to za
pomoc polece more i sort. Dodajmy jeszcze komunikat informuj cy o tym, e
wszystko przebieg o pomy lnie:

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

Laboratorium : SYSTEMY OPERACYJNE

2

@echo off

If exist %1 del /P %1

for %%f in (*.cmd *.bat) do dir /b %%f >> %1

more %1 | sort >%2

echo Opreacje przebieg y pomy lnie!!!

pause

II. W tym przyk adzie chcemy by w przypadku braku pliku który chcieliby my

odczyta , nie wy wietli si standardowy komunikat o b dzie, a zamiast niego
móg si wy wietli nasz. Mo na to zrealizowa w nast puj cy sposób:

@echo off

more %1 2> NUL

if Errorlevel 0 echo niestety, ale podany plik: "%1" nie

zosta odnaleziony...

W drugiej lini skryptu komunikat o ewentualnym b dzie zostanie przekierowany do
NUL czyli do zbioru pustego, co uniemo liwi wy wietlenie go na ekranie. W
nast pnej lini jest u yty wariant instrukcji If gdzie komenda echo si wykona je eli
poprzednie polecenie - w tym przypadku more kod b du wiekszy ni 0.

III. Nast pny przyk ad:

rem przyk ad III

@echo off

echo echo wszystko sie udalo! > %2.bat

dir c:\*.txt /s /b | find "readme" | sort /+1 > %1

call %2

date /t

date /t >> %1

echo koniec poszukiwan

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

Laboratorium : SYSTEMY OPERACYJNE

3

W trzeciej lini zapisujemy nasz komunikat, który stanie si plikiem wsadowym o

nazwie podanej jako drugi argument. Nast pnie komenda dir wy wietli wszystkie
pliki o rozszerzeniu .txt na dysku C i wynik swojego dzia ania wy le do polecenia
find, które odnajdzie ci g znaków "readme" w nazwach tych plików. Nast pnie
polecenie sort posortuje te wybrane nazwy plików poczynaj c od ich drugiego
znaku. Wynik tej operacji zostanie wys any do pliku, kórego nazw u ytkownik
poda jako pierwszy argument dla naszego pliku wsadowego.

IV. Teraz przyk ad wykorzystaniem polecenia AT i warunkowego przetwarzania

polece .

@echo off

for %%f in (\\space \\xxx) do at %%f %1 /interactive

/every:%2 notepad.exe 2>NULL && ^

echo Operacja dla %%f sie powiodla !!! || echo Opreacja dla

%%f sie nie powiodla!!!

Powy szy plik wsadowy mo e by pomocny, je eliby my chcieli zaplanowa

zadanie dla kilku stanowisk. Dodatkowo chcieliby my uzyka informacje czy
operacja si powiod a czy nie. Wykorzystujemy do tego p tle for w postaci takiej,
jak z przyk adu pierwszego, gdzie w liscie podajemy nazwy stanowisk. Argument
%1 okre la nam godzin , a argument %2 dzie . Dodatkowo, je eli polecenie at
wykona si pomy lnie to wy wietli si echo pierwsze. Je eli jednak at si nie
wykona, to pierwsze echo si nie wy wietli, co umo liwi wy wietleniu si drugiemu
echo. Poniewa

linia z instrukcj

For jest zad uga stusujemy przeniesienie

polecenia do nast pnego wiersza przypomocy znacznika ^. Je eli za o ymy, e na
\\space mo na co zaplanowa , a na \\xxx nie, to po uruchomieniu skryptu na
ekranie zobaczymy:

C:\Documents and Settings\mmn>e.bat 12:00 Wt

Dodano nowe zadanie o identyfikatorze = 1

Operacja dla \\space sie powiodla !!!

Odmowa dost pu.

Opreacja dla \\xxx sie nie powiodla!!!

V. Jako ostatni przyk ad podam nast puj cy skrypt:

@echo off

for /l %%f IN (1,1,%2) do net send %1 error%%f > NUL && echo

komunikat %%f zostal wyslany do %1!

echo wyslalismy %2 komunikatow

background image

WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJ

Laboratorium : SYSTEMY OPERACYJNE

4

Umo liwia on cykliczne wysy anie komunikatu o coraz to nowym numerze b du

do stanowiska, którego nazw

podajemy jako drugi argument, tyle razy ile

podali my w pierwszym argumencie. Dodatkowo wykorzystali my tu mechanizm
warunkowego przetwarzania polece i tak w przypadku gdy polecenie net send
zostanie wykonane pomy lnie uruchomi si instrukcja echo. Przy korzystaniu z
tego skryptu nale y jednak bra pod uwag cierpliwo

osoby po drugie stronie..

Po uruchomieniu tego skryptu gdzie nazwa komputera jest SPACE, a ilo
powtórze wynosi 5 na naszej konsoli w przypadku powodzenia operacji

wy wietli

si :

C:\Documents and Settings\mmn>d space 5

komunikat 1 zostal wyslany do space!

komunikat 2 zostal wyslany do space!

komunikat 3 zostal wyslany do space!

komunikat 4 zostal wyslany do space!

komunikat 5 zostal wyslany do space!

wyslalismy 5 komunikatow

Literatura:

Batch File Command Reference for Windows 2000

http://www.labmice.net/articles/batchcmds.htm

http://www.republika.pl/mariuszgerasik


Wyszukiwarka

Podobne podstrony:
PPG cwiczenia skrypt id 381324
Cwiczenie nr 8 Teksty id 99954
Cwiczenia nr 2 RPiS id 124688 Nieznany
cwiczenie 3 leki przeciwdepresyjne id 12532
Piecioksiag skrypt id 356244
hydrologia ćwiczenia terenowe 4, Skrypty, UR - materiały ze studiów, IV semestr, hydrologia, terenó
blok 2 skrypt id 90327 Nieznany (2)
cwiczenie 1b inkscape id 125205 Nieznany
blok 3 skrypt id 90351 Nieznany (2)
Cwiczenie 8 Komponent Radiobutton id 99753
Histologia tkanka nablonkowa moj skrypt id 202388
Kropki cwiczenie na kreatywnosc id 250
Hydrologia ćwiczenia terenowe 3, Skrypty, UR - materiały ze studiów, IV semestr, hydrologia, terenów
Cwiczenie 4 opis i zagadnienia id 99493
md skrypt id 290151 Nieznany
Cwiczenie nr 15 id 125710 Nieznany
Hydrologia ćwiczenia terenowe 2, Skrypty, UR - materiały ze studiów, IV semestr, hydrologia, terenów
Cwiczenie 5 opis i zagadnienia id 99566

więcej podobnych podstron