Operációs Rendszerek I.

Slides:



Advertisements
Hasonló előadás
Szerver oldali programozás
Advertisements

Weblapkészítési tudnivalók 2: Útmutató az elnevezésekhez Pék Ágnes © 2009.
Készítette: Kun Béla.  Operációs rendszernek nevezzük a számítástechnikában a számítógépeknek azt az alapprogramját, mely közvetlenül kezeli a hardvert,
1 Bori Tamás Operációs Rendszerek I. 2. óra: parancssori alapok.
Operációs Rendszerek I.
Operációs Rendszerek I.
Számítástechnika I. 1.konzultáció
Operációs rendszerek Bevezetés.
Operációs rendszer Az operációs rendszer feladatai, részei, fajtái
Számítógépes ismeretek 5. óra
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
Operációs rendszerek Mappa és file-kezelés.
LINUX/UNIX PARANCSOK.
Sztringek.
7. előadás (2005. április 12.) Láncolt lista File kezelés 1.
Adatbázis alapú rendszerek
Programozás II. 3. Gyakorlat C++ alapok.
A CLIPS keretrendszer CLIPS "C" Language Integration Production System.
Windows alapok Fájlkezelés.
Könyvtárak kezelése Könyvtárműveletek
Ember László Damn Small Linux Microsoft VPC környezetben.
Microsoft Windows A Windows fejlődése, általános jellemzése – 2. dia
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
PHP Webprogramozás alapjai
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
Könnyen,gyorsan Powershell-ül
Operációs rendszerek gyakorlat
Operációs rendszerek gyakorlat Fájlműveletek.
Ismerkedés a szövegszerkesztéssel
Operációs rendszerek gyakorlat 4. Gyakorlat Vakulya Gergely.
PHP I. Alapok. Mi a PHP? PHP Hypertext Preprocessor Szkriptnyelv –Egyszerű, gyors fejlesztés –Nincs fordítás (csak értelmező) Alkalmazási lehetőségek:
PHP III. Fájlok, űrlapok.
Operációs rendszerek gyakorlat 1. Bevezetés Vakulya Gergely.
Állomány és lemezműveletek
Rendezések és szövegkezelő függvények
Szintaktikai, szemantikai szabályok
1.3. Pascal program felépítése Az els ő program. Program ; … Begin … End. Program fej Deklarációs rész Végrehajtó rész.
Operációs Rendszerek 1 Felhasználókezelés Windisch Gergely
1 Operációs rendszerek I, 3. gyakorlat Windisch Gergely
Mit kell megtanulni? Euler kéz, DH lépés mint mátrixok szorzata Minden, ami a mérési útmutató kérdéseihez szükséges (pdf 59. oldal) ARPS (azok az utasítások,
PARANCSOK HASZNÁLATA WINDOWS-BAN ÉS LINUXBAN II. Balaton Marcell Balázs.
Visual Basic 2008 Express Edition
Bevezetés az informatikába 4. előadás
Az algoritmuskészítés alapjai
Apache Ant 2. gyakorlat Alkalmazásfejlesztés /2 Gyakorlat Zalatnai Csongor.
Turócziné Kiscsatári Nóra
Óravázlat Készítette: Kucsera Mihály és Toldi Miklós
Operációs Rendszerek Önállóan feldolgozandó részek, amelyekből dolgozat írása fog történni a harmadik héten.
Az operációs rendszer feladata
Az operációs rendszerek feladatai, csoportosításuk
Gazdasági informatikus - Szövegszerkesztés 1 Hosszú dokumentumok kezelése.
Egy operációs rendszer könyvtárszerkezete (tárolórendszere)
Táblázatok.
Mappa- és fájlműveletek
Bevezetés az informatikába 3. előadás Software alapismeretek II Operációs rendszerek 1. A DOS operációs rendszer.
Műveletek mappákkal és a fájltípusok
Ismétlés:grafikus felületek Felső panel Indítópanel Asztal Indikátorok Kuka.
Készítette: Rummel Szabolcs Elérhet ő ség: Linux kezelése.
Az operációs rendszer feladatai
OPERÁCIÓS RENDSZEREK LINUX – PARANCSSOR.
Neumann János Informatikai Kar
Alkalmazásfejlesztés gyakorlat
Total commander.
Programozás C# -ban Elágazások.
A CLIPS keretrendszer
Ubuntu – ismerkedés Fájlok és könyvtárak
Folyamatok.
Műveletek mappákkal és a fájltípusok
Algoritmus készítés.
Előadás másolata:

Operációs Rendszerek I. Ismerkedés a parancssorral Fájlkezelés parancssorból Egyszerű parancsfájlok

A parancssor (cmd) Jellemzői Majd minden OR alatt van valami hasonló Használata esetenként gyorsabb, mint a GUI alapú megoldásoké Lehet scriptet írni Kevesebb erőforrás igény (mint GUI esetén) Van history (előzmények) könnyebb parancsot ismételni log is egyben Parancsok és kapcsolók pontos szintaxisát ismerni kell (de…) De: van on-line help!

A parancssor indítása: futtatás  cmd Indulási könyvtár: indítás helye / HOMEPATH kilépés: exit navigáció Parancssorban mozgás: kurzor, HOME és END ↑ és ↓  history F7  parancs history „ablakban” fájlnév kiegészítés: TAB Teljes képernyő: bal ALT+ENTER

Ablak megjelenése Indítási paraméterek /c : egyetlen (megadott) parancs végrehajtása /t:fg : színek beállítása (pl. 16) /e:on : parancskiterjesztés engedélyezése Stb. (lásd cmd /? és HELP) Címsoron jobb klikk  tulajdonságok Működési környezet beállítása Tippek: HELP „To configure the command prompt” title parancs: ablak címének megadása

Parancsok típusai belső: külső parancsok  másik exe-t futtat le: cmd.exe tudja pl.: dir copy külső parancsok  másik exe-t futtat le: pl.: sort.exe  c:\Window\System32\sort.exe Vagy nem, ez telepítéstől függ!

Parancsok felépítése Parancsnév [kapcsolók] [paraméterek] pl: copy /y fajl1 fajl2 Parancsok működése kapcsolókkal (/kapcsolo) módosítható Kapcsolók egyidejű használata parancsfüggő (HELP), lehetnek egymást kizáró kapcsolók is Általában mindig van: /? Ha a program mindenképpen vár paramétert, de nem adjuk meg hibajelzés Egyszerre akár több paraméter is átadható (vagy éppen átadandó)

Segítség Források Konvencionális kapcsoló: /? help „parancsnév” Start menü – Segítség és támogatás Referencia: „Command-line reference A-Z”, „Command shell overview” Jelölések COPY [/d] [/v] [/n] [{/y|/-y}] [/z] [{/a|/b}] Source [{/a|/b}] [+ Source [{/a|/b}] [+ ...]] [Destination [{/a|/b}]] COPY: a parancs Source, Destination: paraméterek /d, /v, stb. : kapcsolók [/d] [destination] : opcionális elem {/a|/b} : egymást kizáró (együtt nem használható) elemek

Fontosabb parancsok dir: könyvtár tartalmának listázása cd: munkakönyvtár lekérése / beállítása copy: fájlok másolása move / rename: fájlok mozgatása, átnevezése mkdir, rmdir: könyvtár létrehozás, törlés edit: minimal editor

Gyakorlás Alapok On-Line help Indítsa el a parancsértelmezőt (cmd) Állítson be kék háttért és sárga betűket Az ablak címét állítsa át: „parancsaim”-ra On-Line help Hogyan lehet a „dir” parancsot úgy futtatni, hogy az csak a fájlok neveit írja ki? (/B) Melyik paranccsal lehet a c: meghajtó könyvtárstruktúráját (fát) kiíratni? Alapvető parancsok (minden lépés után ellenőrizze az eredményt) Hozzon létre egy „munkáim” könyvtárat Ebben hozzon létre egy „valami.txt” fájl Készítsen másolatot „fontos.txt” néven A „valami.txt” fájl nevezze át „nemfontos.txt” névre Törölje le a létrehozott fájlokat és a könyvtárat

Fájlok és könyvtárak Diszk és könyvtárstruktúra (részletek később) Diszkeket betűjelükkel azonosítjuk (pl. c:) Diszkeken fa struktúrájú könyvtár-rendszer Az egyes könyvtárak közötti elválasztójel: ‘\’ Kitűntetett helyek (könyvtár struktúrában) Gyökér (kiinduló) könyvtár, jele: \ Munkakönyvtár (aktuális könyvtár) Felhasználó „HOME” könyvtára (HOMEPATH környezeti változó) Fájl elérési utak megadása abszolút elérés: gyökérkönyvtártól, a fát végigjárva adjuk meg Relatív megadás: a munkakönyvtárhoz képest (relatív) adjuk meg Hivatkozás az aktuális könyvtárra: ‘.’ Hivatkozás a szülő könyvtárra: ‘..’ Elérési út megadása parancsoknál Abszolút vagy relatív Elérés keresési út (PATH környezeti változó) segítségével Ha nincs kiterjesztés: behelyettesít (exe, com, cmd, bat, stb.)

Környezeti változók Különféle azonosítók tárolására alkalmas pl. SystemRoot, windir, UserName, PATH Sajátgép/Tulajdonságok/Speciális/Környezeti változók Kétféle környezeti változó Felhasználó változói Rendszerváltozók Használatuk parancssorban Megadás set PATH=c:\mydir set PATH=%PATH%;c:\mydir set ALMA=%PATH%;c:\mydir Hivatkozás a változóra: %név% echo %ALMA%

Gyakorlás PATH Egyéb változók Készítsen másolatot a „notepad.exe” fájlról (c:\windows\system32) a saját könyvtárába „notesz.exe” néven Az elérési út megváltozatásával biztosítsa, hogy a „notesz.exe” bárhonnan elindítható legyen Egyéb változók Hozzon létre egy munkakönyvtárat, majd egy „enkonyvtaram” változót, amely értékként a könyvtár elérési útját tartalmazza! Az „enkonyvtaram” változó használatával másolja át a Windows system32 könyvtárában található összes „com” típusú fájlt a létrehozott könyvtárba! Törölje le az „enkonyvtaram” tartalmát és magát a könyvtárat is!

Állománynevek Hossza legfeljebb 255 karakter lehet Tartalmazhat szóközt és pontokat (többet) Tartalmazhat ékezetes betűket Tiltott karakterek: ? * \ / : < > | Fájltípusok: kiterjesztés alapján dől el Kiterjesztés az utolsó pont mögött álló rész (lehet több, mint 3 karakter) a „beépített” típusok (exe, cmd, stb.) mellett az alkalmazások is regisztrálhatnak saját típusokat (asszociáció) Kis és nagybetűt megőrzi, de fájlok kezelésekor nem veszi figyelembe Hosszú nevekhez rövid (8.3) változatú név létrehozása automatikusan megtörténik Kis és naygbetű: alma.doc és Alma.doc nem lehet egy könyvtárban!

A .txt fájlnévkiterjesztéshez tartozó fájltípustársítás törléséhez a következőt kell beírnia: FTYPE rtffile="C:\Program Files\Windows NT\Accessories\WORDPAD.EXE" "%1" ASSOC .rtf=rtffile

„Gondok” az állománynevekkel Szóközök a névben: honnan „tudja” a parancs? Forrás: elso masodik Cél: harmadik copy elso masodik harmadik (3 paraméter) Megoldás: idézőjelek használata Kis és nagybetűk „Idegen” rendszereknél (pl. Unix) gondokat okozhat Nemzeti karakterek a nevekben A nevek az adott XP példány alapértelmezett kódlapját használva konvertálódnak Unicode-ról, ez pedig már a magyar ékezeteknél is gond lehet (pl. angol az alapértelmezett kódlap) – „Control Panel/Regional and Language/Advanced” Kis és nagybetűk: általában rossza gyakorlat erre nem figyelni (programokban kódolt fájlhivatkozások, html fájlok, stb.) Mindennapos probléma: Windows alatt (akár kézzel) szerkesztett weblap feltöltése Unix alapú Web szerverre (eléggé sok ilyen van) Ékezetes: pl. az „első” magyar kódlappal bíró XP esetén „első” de angolnál „elso” A Windows a nem Unicode-t használó programok számára a Unicode karaktereket visszakonvertálja 8 bites kódokra (méghozzá az alapéretlmezetten megadottra)

Elnevezési tippek ekezet nelkul (ha lehet) space nélkül, helyette alulvonás (_) kis-nagybetűk egységesen név önmagáért beszéljen később is tudnunk kell mi az adott fájl ne legyen nagyon hosszú

Gyakorlás Nevükben szóközt tartalmazó fájlok Kis és nagybetű Létrehoz: „alma”, „körte” és „alma körte” Töröl alma körte (idézőjel nélkül) Nézd meg mit csináltál… Töröl alma körte (most már rendesen) Kis és nagybetű Létrehoz: alma Másol: alma → Körte Másol: alma → KÖRTE Másol: alma → kÖRTE Hány körte van? Pontosan mi a neve?

Fájl és könyvtárkezelés Könyvtárak tartalmának listázása: dir Aktuális (munka) könyvtár nevének lekérése: cd Aktuális (munka) könyvtár megváltoztatása: cd Könyvtárváltás „visszaúttal”: pushd/popd További parancsok Könyvtár létrehozása: mkdir Könyvtár törlése: rmdir Alapértelmezés: csak üres könyvtárat enged törölni! /S kapcsoló: rekurzív törlés, akkor is megy, ha nem üres a könyvtár /Q kapcsoló: /S esetén elnyomja a megerősítés kérést Átnevezés Filemon: cmd.exe indít, leszűr erre a programra, ezután parancssorból: notepad, alma – műveleteket néz

Alapvető fájlműveletek Másolás: copy copy <srcfile> <dstfile> Összefűzés: copy <srcfile> <+srcfile> … <dstfile> Mozgatás: move (átnevezésre is használható) move <srcfile> <dstfile> Átnevezés: rename/ren rename <src> <dst>, de dst esetében csak egy fájlnév állhat, elérési út nem (semmilyen módon)! rename c:\tmp\alma.txt korte.txt  rename c:\tmp\alma.txt c:\temp\korte.txt  Törlés: del/erase del <file> Rekurzív törlés (alkönyvtárakban is): del /s <file>

Fájlműveletek (folytatás) Speciális „fájlok” – Unix örökség az eszközök eléréséhez (con, null, stb.) copy con c:\tmp\alma.txt (CTRL-Z!) copy c:\tmp\alma.txt con copy c:\tmp\alma.txt nul Xcopy Rekurzív másolás (üres könyvtárak is): xcopy a: b: /s /e Adott dátum után módosult fájlok másolása: xcopy \rawdata \reports /d:12-29-1993 Ugyanez, dátum-korlát nélkül („egyszerű” copy): xcopy \rawdata \reports /u

Gyakorlás pushd/popd Copy Copy con Xcopy próbálgatása Milyen egyéb módon lehet biztosítani a pushd/popd szolgáltatását (legalább egy mélységig)? Copy 3 szöveges fájl létrehozása (pár soros) Fájlok összefűzése egy fájllá Copy con Fájl létrehozása „copy con” módon Fájl kiíratása „copy con” módon Xcopy próbálgatása

Helyettesítő karekterek Probléma: valamilyen műveletet (pl. másolás, törlés) egyszerre több fájlon szeretnénk végrehajtani Megoldás: ha a fájlok nevük alapján megkülönböztethetők, akkor a helyettesítő karakterek használata Helyettesítő karakterek: : tetszőleges számú karakter : egyetlen karakter Használatuk (pl): copy ab*cd?.e* d:

Szöveges fájlok Fájl létrehozása Fájl tartalmának megjelenítése Notepad, edit (karakteres) copy con <fn> Fájl tartalmának megjelenítése type <fn> copy <fn> con Fájl tartalmának módosítása Elsődlegesen editorok (edit, stb.) Tartalommal kapcsolatos műveletek Keresés: find Rendezés: sort Fájlok összehasonlítása: fc

Parancsok egymásutánisága Többféle lehetőség &: mindig végrehajtásra kerül cmd1 & cmd2 &&: csak akkor kerül végrehajtásra, ha a művelet sikeres cmd1 && cmd2 ||: csak akkor kerül végrehajtásra ha a művelet sikertelen cmd1 || cmd 2

Parancsok egymásutánisága Parancsok csoportosítása (parancs1 & paramcs2) || (parancs3) (dir & echo hello & mkdir hello)

Gyakorlás Primitív „move” parancs összefűzéssel Előfeltétel ellenőrzés Először másol, ha sikeres volt, akkor töröl Előfeltétel ellenőrzés Csak akkor próbálja kiírni egy fájl tartalmát (pl. more), ha az létezik Hibakezelés Ha a másolás parancs nem fut le, akkor írjon ki egy üzenetet (pl. „hát ez nem jött össze”)

Átirányítás Szabványos be- és kimeneti, hibacsatornák A „jól nevelt” segédprogramok ezeket a csatornákat használják (nem közvetlen képernyő, billentyű elérést) A parancsértelmező képes a szabványos csatornák „eltérítésére” a program tudta nélkül! kimeneti csatorna átirányítása fájlba dir > alma.txt vagy dir >> alma.txt (utóbbi hozzáfűz) bemeneti csatorna fájlból sort < alma.txt Hibacsatorna átirányítása valami.exe 2> alma.txt Csatornába irányítás valami.exe 2>&1

Parancsösszefűzés, átirányítás Összetett feladatok esetén az eredményt több parancs egymás utáni végrehajtása adja Minden parancs kimenetét fájlba irányítom, a következő parancs ebből dolgozik dir > alma & sort < alma Vagy: a parancsok ki- és bemenetét közvetlenül összekapcsolom dir | sort

Egyéb hasznos parancsok more sort find type tree fc

Gyakorlás Fájlmásolás type paranccsal és átirányítással Döntse el, hogy létezik-e az adott könyvtár, de a tartalmát ne írja ki /Fájl kimenetének (dir) átirányítása „nul” eszközre/ Kapcsolók használata nélkül tördelje fel képernyőkre a „dir” parancs kimenetét /pipe használata (dir és more kapcsolata)/ Készítsen el a „nevek.txt” fájlt, amelyet töltsön fel a laborban találhatók keresztneveivel. Rendezze ABC sorrendbe a neveket!

Gyakorlás Parancsok működésének kitalálása On-Line help segítségével (sort, fc, find)

Parancsfájlok Ami volt: parancsok összekapcsolása parancssorból (parancsok egymás utáni végrehajtása, függőséggel), az STDIO (átirányítás, pipe) Parancsfájlok: mi az? Általános célú parancsfájlok: parancssori paraméterek  Parancssori paraméteres példa További lehetőségek röviden: változók, elágazások, vezérlésátadás és ciklusok  Egyszerű példák

Batch fájlok Fájl kiterjesztése: bat vagy cmd Fájl tartalma: különféle parancsok egymásutánja rem: comment pl: rem Ezt a sort ne hajtsd végre Ki fogja irni, de nem értelmezi echo off Alapból mindent kiír, ezzel a parancs kiírása megakadályozható globálisan Parancs elé tett @ ugyanezt teszi (arra a sorra) Escape karakter: ^

Gyakorlás Egyszerű parancsfájl létrehozása és futtatása: parancsok egymásutánja Előző órák során kipróbált parancs-kombinációk átírása parancs fájlba Echo off hatásának kipróbálása Megyjegyzések a fájlok elejére (ki készítette, mi a célja)

Változók Lásd Korábbi: környezeti változók! létrehozás: set valtozonev=”valami” törlés: set valtozonev= A változóknak azonnal értéket kell adni Ez sem case sensitive Hatóköre az adott parancsfájl kisebb hatókör kell, akkor setlocal, endlocal Aritmetika: /a set ertek=4+4 – string-ként értelmezi set /a ertek=4+4: 8 (azaz összeadta)

Bemeneti paraméterek %0: fájl neve %1, %2, … %9: kapcsolók, paraméterek %* - az átadott összes paraméter SHIFT parancs (paraméterek eltolása) SHIFT /3 eltolás a 3. paramétertől kezdődően Pl. a.cmd fájl, benne echo-k (echo %0, echo %1, stb.) a.cmd se ki se be se nyő : %0: a.cmd : %1: se : %2: ki stb.

Gyakorlás Előzőekben elkészített fájlok (pl. move megoldása copy és delete segítségével) kiegészítése Paramétereket parancssorból vegye Ha a forrásfájl nem létezik, akkor írjon ki valamilyen üzenetet (előzetes tesztelés) Egyszerű összeadó gép készítése Adja össze a paraméterként megadott két számot!

IF – feltételes elágazások IF: feltételtől függő működés megvalósítása IF [NOT] condition (statement1) [else (statement2)] if [not] errorlevel number command [else expression] if [not] string1==string2 command [else expression] if [not] exist FileName command [else expression] Ha a kiterjesztett parancsok engedélyezettek: if [/i] string1 CompareOp string2 command [else expression] if cmdextversion number command [else expression] if defined variable command [else expression]

Elágazások folytatás IF „%ComputerName%”==”kalapacs” (echo „De fura nev”) else (echo „Nem is olyan fura nev”) „”-re vigyázni, nélküle nem megy! IF NOT: mint az IF, csak negálva IF [NOT] DEFINIED true, ha a megadott változó létezik: if not definied %temp% (set temp=”C:\temp”) DE: %1, %2, stb. mindig definiálva van! IF [NOT] EXIST: fájl létezését vizsgálja IF [NOT] ERRORLEVEL: elágazás parancs végrehajtási státusza (exit code) alapján DIR q:\ & IF ERRORLEVEL 1 (echo HIBA) Igaz, ha az exit code >= mint az érték Mi is az az exit code?

Példák if ”%1”==”a” (echo A) else (echo is not A) If ”%varA%” equ ”%varB%” (echo Match!)

Elágazások folytatás Összehasonlítások IF-ben if „stringA”==”stringB” if „%varA%”==”stringA” if „%varA%”==”%varB%” Idézőjel használata hasznos /i kapcsoló használatával nem tesz különbséget a kis- és nagybetűk között EQU equal  NEQ not equal  LSS less than  LEQ less than or equal  GTR greater than  GEQ greater than or equal if „%varA%” lss ”%varB%”: igaz, ha varA kisebb, mint varB

Elágazások folytatás IF igaz és hamis ágához csak egy parancsot írhatunk (vagy láncolni)  goto Például: if "%1"=="1" goto alma if "%1"=="2" goto korte goto exit :alma echo „ez itt az 1-ag” :korte echo „ez itt a 2-ag” :exit

Gyakorlás Az első paraméterként kapott értéket vizsgáljuk meg. Amennyiben 12 a szám, írjuk ki, hogy "Tizenkettő", amennyiben nem, akkor írjuk ki, hogy "A beírt érték nem tizenkettő!" Move példa hibakezelés része átalakítása „if” szerkezetre Készítsen scriptet, amely az első paraméterként kapott fájlt ellenőrzi, hogy létezik-e. Amennyiben igen, akkor írassa ki, amennyiben nem, hozzon létre egy új fájlt a könyvtár fastruktúrájának tartalmával Négy alapműveletes számológép, RPN megadással (parancssori paraméterekkel)

Iteráció for [módszer] (változónév) in (fájllista) do (parancs) Módszer lehet: /D: Könyvtárak iterálása /R: alkönyvtárakkal együtt /L: értéksorozat végigjárása /F: fájlon belül soronkénti iterálás Kapcsoló nélkül: Fájlok iterálása Példák for %%B in (*.*) do echo %%B for /d %%B in (*.*) do echo %%B for /l %%B in (0,1,10) do @echo %%B For /f %%B in (akarmi.txt) do echo %%B Parancssorban csak %B a változó

Iteráció for /d %%B in (%SystemRoot% %SystemRoot%\*) do echo %%B for /d %%B in (%APPDATA% %APPDATA%\*) do (@for %%C in (”%%B\*.txt”) do echo %%C)

Gyakorlás 1. Készítsen egy olyan scriptet, amely elszámol az első paraméterként megadott értéktől a másodikig. Módosítsa úgy a scriptet, hogy akkor is fusson le, ha az első paraméter nagyobb, mint a második! 2. Hozzon létre egy fájlt, melynek tartalma a következő legyen: Valami_1 Valami_2 Valami_3 Hozzon létre script segítségével könyvtárakat a fájlban szereplő nevekkel!