Systemy operacyjne laboratorium 3 Paweł Gmys strona 1



Podobne dokumenty
1. Podstawowe informacje o WSH

Opera Wykorzystanie certyfikatów niekwalifikowanych w oprogramowaniu Opera wersja 1.1 UNIZETO TECHNOLOGIES SA

Języki skryptowe w programie Plans

Uywanie licencji typu Standalone. Japanese Using a Standalone License. Language. Contents

System midzybankowej informacji gospodarczej Dokumenty Zastrzeone MIG DZ ver Aplikacja WWW ver. 2.1 Instrukcja Obsługi

Instrukcja obsługi programu Pilot PS 5rc

Dostp do zasobów dyskowych uytkowników lcme10 przez protokół SMB (Microsoft Networking)

Funkcje i instrukcje języka JavaScript

Host skryptów systemu Windows (WSH, Windows Scripting Host)

Mozilla Firefox PL. Wykorzystanie certyfikatów niekwalifikowanych w oprogramowaniu Mozilla Firefox PL. wersja 1.1

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Trochę o plikach wsadowych (Windows)

Twoja instrukcja użytkownika HP PAVILION DV6-1215SA

Przegldanie stron wymaga odpowiedniej mikroprzegldarki w urzdzeniu mobilnym lub stosownego emulatora.

3. Instalator rozpocznie proces instalacji

Temat: Kopiowanie katalogów (folderów) i plików pomiędzy oknami

Program do konwersji obrazu na cig zero-jedynkowy

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()

obsług dowolnego typu formularzy (np. formularzy ankietowych), pobieranie wzorców formularzy z serwera centralnego,

1 Przygotował: mgr inż. Maciej Lasota

Programowanie w języku Python. Grażyna Koba

Podstawy JavaScript ćwiczenia

Pliki. Operacje na plikach w Pascalu

Klonowanie MAC adresu oraz TTL

Pracownia internetowa w szkole ZASTOSOWANIA

4CMSystem. Podrcznik uytkownika. Strona projektu: Realizacja projektu:

Instrukcja obsługi systemu przywoławczego pomidzy kabin LF a laboratorium analiz chemicznych

Laboratorium Systemów SCADA

Instrukcja obsługi dodatku InsERT GT Smart Documents

Cw.12 JAVAScript w dokumentach HTML

Twoja instrukcja użytkownika PHILIPS JR32RWDVK

Przyk adowa konfiguracja zwielokrotnianienia po czenia za pomoc Link Aggregation Control Protocol

Obrazek 1: Interfejs DT. DT Help File v1.3

Kancelaria instalacja programu

Windows Commander (WinCmd)

PAMIĘĆ OPERACYJNA...107

Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze

Uywanie licencji typu On-Demand. Using an On-Demand License Japanese. Language. Contents

Poradnik korzystania z serwisu UNET: Konfiguracja programu pocztowego

Przed instalacj naley sprawdzi wersj posiadanych sterowników urzdzenia. Powinna by nie starsza ni:

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Zadania do wykonaj przed przyst!pieniem do pracy:

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Mozilla Thunderbird PL


O środowisku Windows. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

Państwowa Wyższa Szkoła Zawodowa w Gorzowie Wlkp. Laboratorium architektury komputerów

Programowanie i struktury danych

Poradnik korzystania z serwisu UNET: Dostp do poczty elektronicznej ze strony WWW

Instalacja Altium Designer Powizane wideo Altium Designer - Installation and Management

Program SMS4 Monitor

Lekcja 9 - LICZBY LOSOWE, ZMIENNE

windows XP n a j l e p s z e t r i k i

DOS Podstawowe komendy Przygotowanie dyskietki do pracy Praca z katalogami w systemie DOS Operacje kopiowania

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Informatyka II. Laboratorium Aplikacja okienkowa

Laboratorium 1 - Programowanie proceduralne i obiektowe

EC4P Pierwszy program w 6 krokach

Instalacja programu Sprzeda z motorem. bazy danych Pervasive V8

Systemy operacyjne. Zasady lokalne i konfiguracja środowiska Windows 2000

ZPKSoft. Kreator dokumentów. Wstp. Przeznaczenie. Definicje

CYKL ZAJ POZNAJEMY POWER POINT

Programowanie obiektowe

SUPLEMENT SM-BOSS WERSJA 6.15

LABORATORIUM INFORMATYKI 0

Robert Barański, AGH, KMIW MathScript and Formula Nodes v1.0

Obsługa komputera. Paweł Kruk

Ustawienia personalne

Podstawy Programowania 2

1. Klasa typu sealed. Przykład 1. sealed class Standard{ class NowyStandard:Standard{ // błd!!!

O środowisku Windows. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

Tworzenie bazy danych Biblioteka tworzenie tabel i powiza, manipulowanie danymi. Zadania do wykonani przed przystpieniem do pracy:

Zastosowanie programu Microsoft Excel do analizy wyników nauczania

Instalacja programu Sprzeda

Instrukcja obsługi notowań koszykowych w M@klerPlus

Grzegorz Cygan. Zarządzanie prawami plików i folderów w systemie operacyjnym Windows z systemem plików NTFS

SZCZEGÓŁOWY HARMONOGRAM SZKOLENIA

5.2. Pierwsze kroki z bazami danych

Wprowadzenie (17) Część I. Makra w Excelu - podstawy (23)

Lekcja 12 - POMOCNICY

Expo Composer Garncarska Szczecin tel.: info@doittechnology.pl. Dokumentacja użytkownika

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

czyli jak porządkować swoje dane

Rozdział 5: Style tekstu

Korzystanie z edytora zasad grupy do zarządzania zasadami komputera lokalnego w systemie Windows XP

Bash i algorytmy. Elwira Wachowicz. 20 lutego

Przetwarzanie sygnaªów

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

Instrukcja Obsugi Programu

1 Zrób to inaczej. 1.1 Przechowywanie plików Zapisanie i otwieranie pliku do OneDrive w aplikacji Office

Instrukcja obsługi programu DIALux 2.6

IBM SPSS Statistics Wersja 23. Konfigurowanie ułatwień dostępu

Zdarzenia Zdarzenia onload i onunload

Dział Dopuszczający Dostateczny Dobry Bardzo dobry Celujący

SYSTEMY OPERACYJNE ĆWICZENIE POLECENIA SYSTEMU MSDOS

DLA WINDOWS 1. USTAWIANIE SKOKU W CZASIE 2.WYBÓR CHRONIONYCH PLIKÓW 3.POWRÓT DO PRZESZŁOŚCI

Laboratorium 1 Wprowadzenie do PHP

Temat: Programowanie zdarzeniowe. Zdarzenia: delegacje, wykorzystywanie zdarze. Elementy Windows Application (WPF Windows Presentation Foundation).

Transkrypt:

Systemy operacyjne laboratorium 3 Paweł Gmys strona 1 Windows Host Script WSH udostpnia dwa tryby uruchamiania skryptów: tekstowy i graficzny. O sposobie przetwarzania programu moe zadecydowa powłoka systemowa Skrypt utworzony w jzyku JScript (a dokładniej - w jego odmianie autorstwa Microsoftu) powinien zosta zapisany w pliku z rozszerzeniem JS. Spróbujmy zatem utworzy najprostszy moliwy program, wypisujcy co na ekranie komputera. Wystarczy do tego jeden wiersz programu: WScript.Echo('Witaj! Jest ' + Date()); Po zapisaniu skryptu (np. w pliku skrypt1.js) spróbujmy go uruchomi poprzez dwukrotne kliknicie ikony tego pliku lewym przyciskiem mysz. Zapis WScript.Echo() oznacza odwołanie si do metody Echo() obiektu WScript, który jest jednym z najwaniejszych elementów modelu obiektowego WSH. Metoda Echo() wy- wietla na ekranie podany w formie parametru tekst. Przy okazji nauczylimy si uywa funkcji Date(), zwracajcej aktualn dat systemow. Jednym z bardziej przydatnych zastosowa skryptów systemowych (w dowolnym systemie operacyjnym) jest automatyzacja czsto wykonywanych lub skomplikowanych operacji plikowych. Przykładami mog by chociaby usuwanie starych plików tymczasowych, tworzenie kopii zapasowych czy kontrolowanie iloci wolnego miejsca na dysku. Spróbujmy przyjrze si mechanizmom obsługi systemu plików przez WSH. Zacznijmy od najprostszych czynnoci - np. sprawdzenia miejsca zajmowanego przez katalog: var fso; fso = new ActiveXObject('Scripting.FileSystemObject'); var katalog = fso.getfolder ('c:\\winnt'); WScript.Echo('Rozmiar folderu wynosi: ' + katalog.size + ' bajty(ów)'); Drugi wiersz skryptu powoduje utworzenie obiektu typu Scripting.FileSystemObject i przypisanie zmiennej fso wskanika do niego. Wspomniany obiekt oferuje metody pozwalajce na praktycznie dowolne operacje dyskowe - takie jak tworzenie, usuwanie czy kopiowanie plików i katalogów, operacje na ich atrybutach itd. Zanim jednak zrobimy cokolwiek z plikiem/folderem, trzeba uzyska wskanik do obiektu typu File lub Folder - dopiero te obiekty udostpniaj interesujce nas funkcje. Robimy to w kolejnym wierszu skryptu (var katalog = fso.getfolder('c:\\winnt')). Podwójny ukonik "\\" jest w rzeczywistoci interpretowany jako pojedynczy ("\" to w JScripcie znak specjalny, po którego wystpieniu parser oczekuje kolejnego znaku). Zamiast katalogu C:\Winnt naley w razie potrzeby poda prawidłowy folder systemowy. Ostatnie polecenie powoduje wywietlenie na ekranie tekstu, którego czci jest warto zwracana przez metod Size() obiektu katalog, czyli całkowity rozmiar folderu (wraz z zawartoci). Znaki "+" to w JavaScripcie operator łczenia (konkatenacji) łacuchów tekstowych. Jak wczeniej wspomniano, obiekt Scripting.FileSystemObject zapewnia rónorodne operacje plikowe, m.in. z uyciem atrybutów plików/folderów. Moemy np. z łatwoci

Systemy operacyjne laboratorium 3 Paweł Gmys strona 2 utworzy skrypt, wywietlajcy list plików w zadanym katalogu, które spełniaj okrelony warunek. Warunkiem moe by np. wskazana data utworzenia. Poniszy skrypt wywietla pliki w katalogu c:\temp, które charakteryzuj si dat modyfikacji póniejsz ni 1 maja 2002 roku: var fso, pliki, data, buf = ''; fso = new ActiveXObject('Scripting. FileSystemObject'); var katalog = FSO. GetFolder('c:\\temp'); pliki = new Enumerator(katalog. files); data = new Date(2002, 5, 1); for (;!pliki.atend(); pliki. movenext()) if (pliki.item().datelastmodified > data) buf += pliki.item().name + ', ' + pliki.item().size + ' bajty(ów) \n'; WScript.Echo('Pliki o dacie póniejszej ni ' + data.getdate() + '/' + data.getmonth() + '/' data.getyear() + ':\n\n' + buf) Obiekt Scripting.FileSystemObject i jego metoda GetFolder() s nam ju znane. Wiersz pliki = new Enumerator(katalog.files) powoduje utworzenie kolekcji obiektów reprezentujcych pliki, zwróconych przez metod files obiektu katalog (typu Folder). Zmienna data bdzie zawierała warto odpowiadajc 5 maja 2002. W ptli for, powtarzanej a do napotkania ostatniego elementu kolekcji pliki (sygnalizowanego zwróceniem wartoci true przez metod pliki.atend()), wyszukiwane s obiekty spełniajce odpowiedni warunek. Jest nim wyraenie pliki.item().datelastmodified > data, którego wartoci jest true, jeeli data ostatniej modyfikacji aktualnego pliku jest póniejsza ni ta, któr reprezentuje zawarto zmiennej data. Jeli tak jest, do zmiennej łacuchowej buf dodawany jest wiersz zawierajcy nazw i rozmiar znalezionego pliku. Po wykonaniu kadego kroku przesuwany jest wskanik aktualnej pozycji listy pliki (pliki.movenext()). Ostatni czynnoci wykonywan przez nasz skrypt jest wywietlenie listy znalezionych we wskazanym katalogu plików, spełniajcych podany warunek. Dzieje si to dziki metodzie WScript.Echo(). Metody getdate(), getmonth() i getyear() obiektu data zwracaj odpowiednio dzie miesica, miesic i rok odpowiadajce dacie przechowywanej w tej zmiennej (gdybymy skorzystali bezporednio z wartoci zmienej data, otrzymalibymy dat w domylnym formacie stosowanym przez WSH). Modyfikujc nieco nasz skrypt, moemy np. uzyska program usuwajcy pliki o rozszerzeniu TMP z podanego folderu: var fso, pliki, data, nazwa, buf = ''; fso = new ActiveXObject ('Scripting.FileSystemObject'); var katalog = fso.getfolder('c:\\temp'); pliki = new Enumerator (katalog.files); for (;!pliki.atend(); pliki.movenext()) nazwa = fso.getextensionname (pliki.item().name); if (nazwa.touppercase() == 'TMP') fso.deletefile(pliki.item());

Systemy operacyjne laboratorium 3 Paweł Gmys strona 3 Wyjanie mog wymaga jedynie metoda GetExtensionName(), zwracajca rozszerzenie podanego pliku, oraz touppercase(), konwertujca małe litery na wielkie w podanym napisie. Współpraca z aplikacjami Ciekaw opcj WSH jest moliwo współpracy z aplikacjami Microsoftu, takimi jak Internet Explorer czy programy wchodzce w skład MS Office'a. Model obiektowy WSH udostpnia odpowiednie klasy, których metody pozwalaj na sterowanie prac aplikacji. W przypadku IE jest to obiekt Internet-Explorer, dla Worda utworzono obiekt Word.Application, dla Accessa - Access.Application. Aby np. wywietli okno IE z otwart stron autora, wystarczy utworzy prosty skrypt: var misio = new ActiveXObject ('InternetExplorer.Application'); misio.navigate('http://klub.chip.pl/pgmys/'); misio.visible = true; Moemy równie "pisa" w pustym oknie przegldarki - słuy do tego celu metoda write() obiektu InternetExlorer.Application.document: var misio = new ActiveXObject ('InternetExplorer.Application'); misio.navigate('about:blank'); misio.toolbar = true; misio.statusbar = true; misio.resizable = false; while (misio.busy) misio.width = 400; misio.height = 300; misio.left = 30; misio.top = 20; ; misio.document.write(''); misio.document.write('przykładowy tekst wywietlony w oknie przegldarki'); misio.document.write(''); misio.visible = true; Najpierw musimy otworzy puste okno przegldarki (misio.navigate('about: blank')). Kolejny krok to wybór danych parametrów okna IE (wywietlane paski, moliwo zmiany rozmiaru okna itp.). Teraz czas na ustalenie rozmiarów okienka (ptla while...) - zanim to jednak zrobimy, musimy odczeka, a aplikacja zostanie załadowana do pamici. Przy okazji wykluczymy sytuacj, kiedy program próbuje wywietli co w oknie przegldarki, zanim system utworzy odpowiednie obiekty. Gdy przegldarka jest gotowa do pracy, moemy skorzysta ze wspomnianej metody write(). Niestety, musimy poda przegldarce pełny kod HTML strony (na szczcie nie jest to

Systemy operacyjne laboratorium 3 Paweł Gmys strona 4 trudne). Ostatni krok to właciwe wywietlenie okna na ekranie (nadanie jego atrybutowi Visible wartoci true). Przydatne drobiazgi Wród wielu moliwoci WSH znajduj si i takie, które trudno zakwalifikowa do wymienionych kategorii. Naley do nich np. stosowanie argumentów wywołania skryptu, co moe si przyda prawie w kadym uywanym na co dzie programie. Przeledmy działanie prostego skryptu, spełniajcego zadania podobne do wykonywanych przez DOS-owe polecenie copy: var fso, argumenty = WScript.Arguments; if (argumenty.count() == 2) fso = new ActiveXObject ('Scripting.FileSystemObject'); if (fso.fileexists(argumenty. item(0))) fso.copyfile(argumenty.item(0), argumenty.item(1), false) else WScript.Echo('Plik do skopiowania nie istnieje'); else WScript.Echo('Nieprawidłowa liczba argumentów!'); Z naszego punktu widzenia wany jest pierwszy wiersz skryptu, a dokładniej przypisanie zmiennej argumenty listy parametrów wywołania programu (argumenty = WScript.Arguments). Do parametrów odwołujemy si póniej za pomoc metody item() (pierwszy parametr to argumenty.item(0), pity - argumenty.item(4) itd.). Warto równie wspomnie o zastosowaniach obiektu Shell. Pozwala on na korzystanie z elementów interfejsu uytkownika Windows. Moemy np. z łatwoci otworzy dowolny katalog w Eksploratorze czy wywietli na ekranie okienko apletu z Panelu sterowania: var szel, folder, plik; szel = new ActiveXObject('Shell.Application'); szel.explore('c:\\temp'); szel.controlpanelitem('desk.cpl'); Dostpna jest równie opcja uruchomienia z poziomu skryptu dowolnego programu znajdujcego si na dysku. Do tego celu słuy metoda Run() obiektu Shell. Jeli wic chcie-

Systemy operacyjne laboratorium 3 Paweł Gmys strona 5 libymy, aby nasz przykładowy skrypt uruchamiał kalkulator Windows, naley do programu dopisa wiersz: szel.run('calc.exe') Korzystajc z powyszego tekstu oraz z informacji zawartych na stronie internetowej http://republika.pl/winhost/ rozwi nastpujce problemy: 1. Utwórz skrypty zamieszczone w tekcie powyej jako przykłady. 2. Napisz skrypt, który usunie wszystkie pliki ze wskazanego katalogu 3. Napisz skrypt, który otworzy aplikacj MS WORD 4. Napisz skrypt, który wywietli w oknie aktualny czas i dat (w jzyku polskim)