[ Pobierz całość w formacie PDF ]
.ÿþWY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJLaboratorium : SYSTEMY OPERACYJNEPrzyk adyPrzyk adowe skrypty w Windows 2000:I.Chc c sobie odrobin skomplikowa wy wietlanie zawarto ci bie cegofolderu 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.txtfor %%f in (*.cmd *.bat) do dir /b %%f >> wy.txtPo uruchomieniu skryptu widzimy efekty jego dzia ania w wierszu polece , atego chcieliby my unikn.Modyfikujemy wi c nasz skrypt dodaj c linie: @echooff na jego pocz tku.Znak @ oznacza, e równie i samo polecenie echo off nieb dzie widoczne.Poniewa u yli my symbolu >> przy przekierowaniu do pliku, toza ka dym razem nasz plik wyj ciowy jest zwi kszany o nast pne dane.Je elichcemy tego unikn , mo emy sprawdza na pocz tku czy istnieje taki plik, aje eli tak to najpierw go usuniemy.Zrealizujemy to instrukcj If exist wy.txt del /Pwy.txt.Prze cznik /P wymusza monitowanie o potwierdzenie usni cia pliku.Teraznasz skrypt wygl da nast puj co:@echo offIf exist wy.txt del /P wy.txtfor %%f in (*.cmd *.bat) do dir /b %%f >> wy.txtTeraz dodamy odrobin interakcji, tzn.sami b dziemy okre la do jakiego plikub dziemy zapisywa wyniki.Realizujemy to zmieniaj c nazw pliku - wy.txt nazwargumentu z jakim b dziemy wywo ywa skrypt: %1.@echo offIf exist %1 del /P %1for %%f in (*.cmd *.bat) do dir /b %%f >> %1Na koniec wykorzystamy mo liwo ci przetwarzania potokowego.Otó nasz plikwyj ciowy posortujemy wed ug kolejno ci alfabetycznej i zapiszemy go donast pnego pliku, którego nazw podamy jako drugi argument.Realizujemy to zapomoc polece more i sort.Dodajmy jeszcze komunikat informuj cy o tym, ewszystko przebieg o pomy lnie:1 WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJLaboratorium : SYSTEMY OPERACYJNE@echo offIf exist %1 del /P %1for %%f in (*.cmd *.bat) do dir /b %%f >> %1more %1 | sort >%2echo Opreacje przebieg y pomy lnie!!!pauseII.W tym przyk adzie chcemy by w przypadku braku pliku który chcieliby myodczyta , nie wy wietli si standardowy komunikat o b dzie, a zamiast niegomóg si wy wietli nasz.Mo na to zrealizowa w nast puj cy sposób:@echo offmore %1 2> NULif Errorlevel 0 echo niestety, ale podany plik: "%1" niezosta odnaleziony.W drugiej lini skryptu komunikat o ewentualnym b dzie zostanie przekierowany doNUL czyli do zbioru pustego, co uniemo liwi wy wietlenie go na ekranie.Wnast pnej lini jest u yty wariant instrukcji If gdzie komenda echo si wykona je elipoprzednie polecenie - w tym przypadku more kod b du wiekszy ni 0.III.Nast pny przyk ad:rem przyk ad III@echo offecho echo wszystko sie udalo! > %2.batdir c:\*.txt /s /b | find "readme" | sort /+1 > %1call %2date /tdate /t >> %1echo koniec poszukiwan2 WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJLaboratorium : SYSTEMY OPERACYJNEW trzeciej lini zapisujemy nasz komunikat, który stanie si plikiem wsadowym onazwie podanej jako drugi argument.Nast pnie komenda dir wy wietli wszystkiepliki o rozszerzeniu.txt na dysku C i wynik swojego dzia ania wy le do poleceniafind, które odnajdzie ci g znaków "readme" w nazwach tych plików.Nast pniepolecenie sort posortuje te wybrane nazwy plików poczynaj c od ich drugiegoznaku.Wynik tej operacji zostanie wys any do pliku, kórego nazw u ytkownikpoda jako pierwszy argument dla naszego pliku wsadowego.IV.Teraz przyk ad wykorzystaniem polecenia AT i warunkowego przetwarzaniapolece.@echo offfor %%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 zaplanowazadanie dla kilku stanowisk.Dodatkowo chcieliby my uzyka informacje czyoperacja 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 atwykona si pomy lnie to wy wietli si echo pierwsze.Je eli jednak at si niewykona, to pierwsze echo si nie wy wietli, co umo liwi wy wietleniu si drugiemuecho.Poniewa linia z instrukcj For jest zad uga stusujemy przeniesieniepolecenia 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 naekranie zobaczymy:C:\Documents and Settings\mmn>e.bat 12:00 WtDodano nowe zadanie o identyfikatorze = 1Operacja dla \\space sie powiodla !!!Odmowa dost pu.Opreacja dla \\xxx sie nie powiodla!!!V.Jako ostatni przyk ad podam nast puj cy skrypt:@echo offfor /l %%f IN (1,1,%2) do net send %1 error%%f > NUL && echokomunikat %%f zostal wyslany do %1!echo wyslalismy %2 komunikatow3 WY SZA SZKO A BIZNESU W D BROWIE GÓRNICZEJLaboratorium : SYSTEMY OPERACYJNEUmo liwia on cykliczne wysy anie komunikatu o coraz to nowym numerze b dudo stanowiska, którego nazw podajemy jako drugi argument, tyle razy ilepodali my w pierwszym argumencie.Dodatkowo wykorzystali my tu mechanizmwarunkowego przetwarzania polece i tak w przypadku gdy polecenie net sendzostanie wykonane pomy lnie uruchomi si instrukcja echo.Przy korzystaniu ztego skryptu nale y jednak bra pod uwag cierpliwo osoby po drugie stronie.Po uruchomieniu tego skryptu gdzie nazwa komputera jest SPACE, a ilopowtórze wynosi 5 na naszej konsoli w przypadku powodzenia operacji wy wietlisi :C:\Documents and Settings\mmn>d space 5komunikat 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 komunikatowLiteratura:Batch File Command Reference for Windows 2000http://www.labmice.net/articles/batchcmds.htmhttp://www.republika.pl/mariuszgerasik4 [ Pobierz caÅ‚ość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • fisis2.htw.pl
  • Copyright © 2016 (...) chciaÅ‚bym posiadać wszystkie oczy na ziemi, żeby patrzeć na Ciebie.
    Design: Solitaire