Komentojonotiedostot - Luento 3

Komentojono on nimensä mukaisesti jono komentoja.

DOS-komennot lyhyesti

Hyödyllisiä DOS-apuohjelmia

Seuraavassa on muutama hyödyllinen merkkipohjainen ohjelma, joka on asennettava erikseen käyttöjärjestelmään.

Komentojen putkittaminen ja uudelleen suuntaaminen

Komentojen putkittamisella voidaan komennon tai ohjelman tuloste ohjata jonkin toisen ohjelman syötteeksi.

Seuraavassa yksinkertainen esimerkki komennon putkittamisesta, jossa DIR-komento putkitetaan MORE-nimiselle ohjelmalle. Toisin sanoen DIR-komennosta syntyvä tuloste ohjataan MORE-ohjelmalle, joka osaa näyttää tulosteen sivu kerrallaan.

DIR |MORE

Järjestäminen

Jos halutaan esimerkiksi järjestää jonkin tiedoston rivit aakkosjärjestykseen näytölle, niin se onnistuu putkittamalla tiedoston tuloste SORT-ohjelmalle.

Seuraavassa esimerkissä on koe.txt-tiedosto, jonka sisältö on seuraavassa nähtävillä.

eka
toka
kolmas
neljäs

Tiedoston tulostaminen näytölle tehdään TYPE-komennolla, jonka tulos ohjataan SORT-ohjelmalle.

TYPE koe.txt | SORT

Näytölle tulostettaessa tiedoston rivit on järjestetty aakkosjärjestykseen seuraavan esimerkin mukaisesti.

eka
kolmas
neljäs
toka

Tulosteen suuntaaminen tiedostoon

Komentojen uudelleen suuntaaminen tarkoittaa komennon tulosteen suuntaamista esimerkiksi tiedostoon.

Esimerkiksi DIR-komennon tuloste voidaan uudelleen suunnata esimerkiksi dir.txt-tiedostoon seuraavan esimerkin mukaisesti. Jos dir.txt-tiedostossa on ennestään jotakin niin vanha sisältö menetetään.

DIR > dir.txt

Jos komennon tuloste halutaan suunnata jo olemassa olevan tiedoston loppuun, niin suurempi kuin -merkin paikalle on laitettava kaksi suurempi kuin -merkkiä. Seuraavassa esimerkissä DIR-komennon tuloste ohjataan jo olemassa olevan tiedoston dir.txt.

DIR >> dir.txt 

Putkittaminen ja uudelleen suuntaaminen yhdessä

  1. putkitetaan DIR-komennon tuloste FIND-ohjelmalle
  2. FIND-ohjelmalla etsitään hakemistolistauksesta kaikki rivit, joilla lukee txt.
  3. FIND-ohjelman tuloste uudelleen suunnataan tiedostoon tekstit.txt.

Tiedostoon menee ainoastaan hakemistolistauksen ne rivit, jotka koskevat txt-päätteisiä tiedostoja.

DIR | FIND ".txt"> tekstit.txt

Mihin komentojonoja tarvitaan?

DOS-komentojonot olivat erityisen merkittäviä ja käyttökelpoisia DOSin ja Windows 3.1:n aikaan, mutta nykyisinkin niiden avulla voidaan tehdä Windows-ympäristössä erilaisia ylläpidollisia toimia.

Komentojonoilla voidaan:

Miten komentojono tehdään?

Komentojonotiedosto on tavallinen pelkkää tekstiä sisältävä tekstitiedosto (ASCII), joka nimetään päätteelle .BAT tai .CMD.

Komentojonotiedosto sisältää tavallisia DOS-komentoja sekä ajettavien ohjelmien nimiä ja muutamia erityisesti komentojonoja varten tehtyjä komentoja.

Jokainen yksittäinen komentojonotiedoston rivi sisältää jonkin DOS-komennon.

Hello World -esimerkki

Seuraava komentojono tulostaa näytölle tekstin "Hello World".

Seuraava rivi on tallennettu hello.bat nimiseen tiedostoon.

Tiedoston ajaminen onnistuu kirjoittamalla komentoriville pelkkä komentojonon nimen alkuosa eli esimerkin tapauksessa hello.

ECHO Hello World!

Komentojono sisältää ainoastaan echo-komennon, jonka perään on kirjoitettu teksti, joka halutaan tulostaa näytölle.

C:\cmd>hello

C:\cmd>echo Hello World!
Hello World!

C:\cmd>

Ajettaessa tehty komentojono täytyy olla oletushakemistossa tai PATH-polkumuuttujasta täytyy löytyä viittaus hakemistoon, jossa komentojonot sijaitsevat.

Monimutkaisempi esimerkki

  1. Komentojonon alussa tulostetaan näkyville viesti käyttäjälle
  2. tulostetaan yksi tyhjä rivi.
  3. kopioidaan A-levyaseman (levykkeen) juuresta kaikki tiedostot C-levyaseman juuressa sijaitsevaan korppu-hakemistoon.
ECHO Kopioidaan levykkeen tiedostoja kovalevylle
ECHO.
COPY a:\*.* c:\korppu

Edellisen esimerkin komentojono on tallennettu nimelle kopioi.bat.

C:\cmd>kopioi

C:\cmd>ECHO Kopioidaan levykkeen tiedostoja kovalevylle
Kopioidaan levykkeen tiedostoja kovalevylle

C:\cmd>ECHO.

C:\cmd>COPY a:\*.* c:\korppu
a:\selkkarit.html
a:\Esipuhe.doc
a:\kysely.html
a:\Windows95.doc
a:\index.html
        5 file(s) copied
C:\cmd>

Parametrien välittäminen komentojonoon

Edelliset komentojonot eivät ole kovin käyttökelpoisia, koska niissä tehdään aina samat asiat. Käyttäjä pääsee muuttamaan komentojonon toimintaa komentojonoihin välitettävien parametrien avulla.

Normaalisti komentoriville komentoja kirjoitettaessa komennon parametreja vaihetaan.

Komentojonolle voidaan antaa parametrina oma nimi, jonka komentojono liittää tervehdykseen.

  1. Kielletään selvyyden vuoksi ylimääräiset tulostukset
  2. Kirjoitetaan näkyville tervehdys Hello World!.
  3. Kirjoitetaan näkyville sana Hello ja sen perään käyttäjän parametrina antama sana.
@ECHO OFF
ECHO Hello World!
ECHO Hello %1 !

Seuraavassa komentojonon tulostus, kun komentojonoa kutsutaan ilman parametreja.

C:\cmd>hello
Hello World!
Hello  !

Seuraavassa komentojonolle annetaan yksi parametri. Parametri annetaan välilyönnillä erotettuna komentojonon perään. Komentojonossa %1 korvataan käyttäjän antamalla parametrilla.

C:\cmd>hello pete

Hello World!
Hello pete !

Useampi parametri

Parametreja voidaan välittää kaikenkaikkiaan yhdeksän kappaletta. Tarvittaessa parametreja voidaan antaa enemmänkin käyttämällä SHIFT-komentoa.

%0      %1      %2       %3     %4     %5     %6     %7     %8   %9
KOMENTO EKAPARA TOKAPARA KOLMAS NELJÄS VIIDES KUUDES SEISKA KASI YSI
  1. Poistetaan ylimääräinen kaiutus
  2. Tulostetaan näkyville tietoja.
  3. Kopioidaan levykkeeltä käyttäjän antamasta hakemistosta kaikki tiedostot kovelevyn C-levyasemassa sijaitsevaan hakemistoon, jonka käyttäjä antaa toisena parametrina.
@ECHO OFF
ECHO Kopioidaan levykkeen tiedostoja kovalevylle
ECHO.
COPY a:\%1\*.* c:\%2

Edellistä komentojonoa kutsutaan seuraavassa muodossa:

C:\cmd>kopioi korppu lerppu
         %0     %1      %2

Tällöin komentojonossa olevalla kopiointi rivillä olevat muuttujat korvataan komentorivin parametreilla ja rivistä tulee seuraavan näköinen.

COPY a:\korppu\*.* c:\lerppu

Seuraavassa on esitetty komentojonon tulosteet.

C:\cmd>kopioi korppu lerppu
Kopioidaan levykkeen tiedostoja kovalevylle

A:\korppu\selkkarit.html
A:\korppu\Esipuhe.doc
A:\korppu\kysely.html
A:\korppu\Windows95.doc
A:\korppu\index.html
        5 file(s) copied

C:\cmd>

Komentojonoissa käytettävät komennot

Komentojonoissa voidaan käyttää mitä tahansa DOS-komentoja.

Tulosteet käyttäjälle - ECHO

ECHO-komennon avulla voidaan ohjata komentojonon tulostetta.

echo [on | off] [viesti] 

Seuraavassa esimerkissä tulostetaan näkyville teksti "Mukavaa päivää!".

  1. komentojonon komentojen tulostuminen näytölle otetaan pois päältä ja ainoastaan ECHO-komennolle tulostettavat asiat tulevat käyttäjän nähtäville. @-merkki rivin alussa kertoo, että kyseistä riviä ei tulosteta näkyviin.
  2. tulostetaan tyhjä rivi näkyville komennolla ECHO.
  3. Tulostetaan käyttäjälle haluttu informaatio näkyville.
@ECHO OFF
ECHO.
ECHO Mukavaa päivää!
ECHO.

Seuraavassa on esitetty komentojonon tulosteet.

C:\cmd>paivaa

Mukavaa päivää!

C:\cmd>

Kommentointi - REM

REM-komennolla voidaan komentojonoon liittää kommentteja, jotka eivät vaikuta komentojonon suorittamiseen.

rem [kommenttiteksti]

REM-komennolla on seuraavassa on liitetty komentojonoon informaatiota komentojonon toiminnasta.

@ECHO OFF
REM HELLO.BAT
REM Komentojono tulostaa tekstin Hello World!
ECHO.
ECHO Hello World!
ECHO.

Seuraavassa on esitetty edellisen komentojonon tulostamat tekstit.

C:\cmd>hello

Hello World!

C:\cmd>

Komentojonon suorituksen keskeyttäminen - PAUSE

PAUSE-komennolla voidaan keskeyttää komentojonon suoritus.

PAUSE-komennolla keskeytyksessä komento tulostaa tekstin "press any key to continue. . .".

PAUSE-komento antaa käyttäjälle mahdollisuuden keskeyttää komentojonon suorittaminen CTRL-C-näppäinyhdistelmällä.

Seuraavassa on esitetty yksinkertainen komentojono, joka jää odottamaan käyttäjän toimintaa.

@ECHO OFF
ECHO Jos haluat jatkaa komentojonoa, niin paina "any key"-näppäintä!
ECHO Jos et halua jatkaa, niin paina CTRL-C-näppäinyhdistelmää!
PAUSE
ECHO Löysit "any key"-näppäimen!

Komennon toiminta:

C:\cmd>pausetus

Jos haluat jatkaa komentojonoa, niin paina "any key"-näppäintä!
Jos et halua jatkaa, niin paina CTRL-C-näppäinyhdistelmää!
Press any key to continue . . .

Jos käyttäjä painaa mitä tahansa näppäintä, niin komentojono tulostaa lisäksi vielä seuraavan rivin. Jos käyttäjä haluaa keskeyttää komentojonon suorittamisen, niin se onnistuu painamalla CTRL-C-näppäinyhdistelmää.

Löysit "any key"-näppäimen!

Esimerkki

Seuraavan esimerkin komentojono tulostaa käyttäjälle informaatiota ja antaa mahdollisuuden keskeyttää toimintansa ennen hakemiston luomista.

Esimerkissä PAUSE-komennon tulostus ohjataan suoraan "roskikseen", kuten seuraavassa esimerkissä on tehty.

Jos komentojonon toimintaa ei keskeytetä CTRL-C-näppäinyhdistelmällä, niin komentojono luo hakemiston ja tulostaa sen sisällön näkyviin.

@ECHO OFF
ECHO Tehdään hakemisto %1
ECHO Keskeyttääksesi paina CTRL-C!
ECHO Muussa tapauksessa paina mitä tahansa .

PAUSE >NUL
MD %1
DIR %1

Seuraavassa on nähtävillä edellisen komentojonon tulosteet.

C:\cmd>pausetus koe
Tehdään hakemisto koe
Keskeyttääksesi paina CTRL-C!
Muussa tapauksessa paina mitä tahansa .

 Volume in drive C has no label
 Volume Serial Number is 3F3C-1CDA
 Directory of C:\cmd\koe

.              <DIR>        25.10.01   8.57 .
..             <DIR>        25.10.01   8.57 ..
         0 file(s)              0 bytes
         2 dir(s)        3 629.66 MB free
C:\cmd>

Suoritusjärjestyksen muuttaminen - GOTO

Komentojonoissa komennot suoritetaan riveittäin peräkkäin tiedoston alusta aina loppuun saakka.

GOTO-komennon avulla voidaan muuttaa komentojonon komentojen suoritusjärjestystä.

Komentojonon sisällä voidaan hyppiä paikasta toiseen nimiöiden avulla.

GOTO-komennolle annetaan nimiö, johon sen käsketään hypätä.

Nimiö merkitään komentojonon sisälle aloittamalla nimiörivi kaksoispisteellä (:), jonka jälkeen välittömästi annetaan nimiön nimi.

goto nimiö
...
:nimio

GOTO-komennon käyttäminen on välttämätöntä vähänkin monimutkaisemmissa komentojonoissa.

DOS-komentojonoissa ei ole samanlaisia silmukkarakenteita kuin ohjelmointikielissä, joten sen vuoksi joudutaan käyttämään GOTO-rakenteita.

Seuraavassa esimerkissä on ikuinen silmukka, joka saadaan keskeytettyä CTRL-C-näppäinyhdistelmällä. GOTO-komennolla hypätään takaisin kohtaan:alku kolmannelle riville.

@ECHO OFF

:alku
ECHO Ikuinen silmukka :)
ECHO CTRL-C keskeyttää!!

PAUSE
GOTO alku 

Seuraavassa on esiteltynä edellisen esimerkin toimintaa. GOTO-silmukka käytiin kaksi kertaa läpi, jonka jälkeen sen suoritus keskeytettiin CTRL-C-näppäinyhdistelmällä.

C:\cmd>silmukka
Ikuinen silmukka :)
CTRL-C keskeyttää!!
Press any key to continue . . .

Ikuinen silmukka :)
CTRL-C keskeyttää!!
Press any key to continue . . .
^C

Terminate batch job (Y/N)?y

C:\cmd>

Ehtolauseet - IF

IF-komennolla voidaan komentojonon toimintaa ehdollistaa.

IF-komento on hyvin monipuolinen komento, jolla voidaan testata esimerkiksi merkkijonojen yhtä suuruutta.

if [not] merkkijono1==merkkijono2 komento

IF-komennon avulla voidaan myös testata tiedostojen ja hakemistojen olemassaoloa.

Hakemiston olemassaolon testaaminen Windows 95:ssä aiheuttaa komentoon pienen lisän. Hakemistoa täytyy testata muodossa HAKEMISTO\NUL, koska pelkällä hakemistonimellä testaaminen ei onnistu.

if [not] exist tiedostonimi komento

IF-komennolla voidaan myös testata komentojen ja ohjelmien antamia palautusarvoja.

if [not] errorlevel numero komento
  1. testataan IF-komennolla onko komentojonolle annettu parametria.
    • Jos parametria ei ole annettu, niin hypätään kohtaan :puuttuu ja tulostetaan käyttäjälle informaatiota asiasta.
    • Jos parametri on annettu, niin jatketaan kolmannelle riville, jossa testataan parametrina annettavan hakemiston olemassaolo.
  2. Testataan onko hakemisto olemassa
    • Jos hakemisto on olemassa, niin hypätään kohtaan :virhe, jossa käyttäjälle kerrotaan tapahtuneesta. '
      • Virheen tulostamisen jälkeen tehdään uusi hyppy kohtaan :loppu, joka on komentojonon viimeinen rivi.
    • Jos hakemistoa ei ollut olemassa, niin jatketaan komentojonoa
  3. tehdään hakemisto rivillä 5.
  4. kerrotaan asiasta käyttäjälle
  5. hypätään komentojonon kohtaan :loppu.
@ECHO OFF
IF "%1"=="" GOTO puuttuu
IF EXIST %1 GOTO virhe

MKDIR %1
ECHO Hakemisto %1 tehty!
GOTO loppu

:virhe
ECHO Hakemisto on jo olemassa!
ECHO Ei voida tehdä!
GOTO loppu

:puuttuu
ECHO Et antanut parametria!
ECHO Komento on annettava muodossa:
ECHO TEEIF hakemistonimi
:loppu

Komentojonon lopettaminen - EXIT

Komentojonon suoritus voidaan keskeyttää kesken suorituksen EXIT-komennolla.

Jos komentojonon suoritus keskeytetään EXIT-komennolla, niin komentokehoteikkuna suljetaan kokonaan.

Edellä olleen IF-esimerkin GOTO loppu tekstien paikalla voitaisiin käyttää EXIT-komentoa.

Silmukkarakenteet - FOR

FOR-komennon avulla voidaan käsitellä erikseen jokainen joukkona annetusta tiedostosta.

Esimerkiksi jokerimerkkien avulla annettu parametri voidaan käydä läpi tiedostoittain. Seuraavassa FOR-komennon syntaksi:

for %%muuttuja in (joukko) do komento 

Seuraavassa käydään läpi kaikki txt-päätteiset tiedostot ja tulostetaan niiden sisältö näytölle.

for %%f in (*.txt) do type %%f

Seuraavassa esimerkissä tulostetaan näkyville kaikki ensimmäisenä parametrina annettujen tiedostojen sisältö. Esimerkiksi parametrina on voitu antaa *.txt, jolloin jokainen hakemistossa ollut txt-päätteinen tiedosto tulostetaan näytölle yksi kerrallaan, kuten edellisessä esimerkissä.

for %%f in (%1) do type %%f

Seuraavassa esimerkissä on käytetty FOR-komentoa edellisen esimerkin tapaan. Poikkeuksena edelliseen on, että komentojono tulostaa bat-päätteiset tiedostot suoraan annetun tiedoston loppuun. Tämän lisäksi komentojono kirjoittaa näytölle sen tiedoston nimen, jota ollaan käsittelemässä. Kahden komennon suorittaminen on mahdollistettu &-merkin avulla. Tämä onnistuu ainakin Windows 2000:ssa, mutta ei esimerkiksi Windows 95:ssä.

@ECHO OFF
FOR %%k IN (*.bat) DO TYPE %%k>> batit.txt & ECHO %%k

Komentojono tulostaa näytölle seuraavaa:

U:\LAITT~PN\cmd>kooste
hello.bat
kopioi.bat
ikuinen.bat
kooste.bat

Tarkemmin FOR-komennon parametreihin ja mahdollisuuksiin kannattaa tutustua FOR-komennon opasteen avulla. Täydellisen opasteen saa näkyviin komentoriviltä komennolla FOR /? | MORE.

Parametrien siirtäminen - SHIFT

SHIFT-komento mahdollistaa komentojonoissa enemmän kuin yhdeksän parametrin käytön. Komentoa ei useinkaan tarvita, koska komentojonolle joutuu harvoin antamaan edes yhdeksää parametria. SHIFT-komento siirtää kaikkia parametreja yhden taaksepäin eli %2 parametrista tulee %1 parametri.

shift 

Tuhotaan kaikki parametrina annettavat tiedostot.

SHIFT-komennon käyttö mahdollistaa jokaisen parametrina annetun tiedoston tuhoamisen yksitellen. Jokaisen tiedoston tuhoamisen yhteydessä kysytään varmistus tuhoamiselle.

Välissä olevalla IF-komennolla saadaan katkaistua komentojonon suoritus, jos parametrit loppuvat. Muuten kysymyksessä olisi ikuinen silmukka.

@ECHO OFF

:alku

IF "%1"=="" goto loppu

ECHO Tuhotaan %1
ECHO Paina jotakin näppäintä jatkaaksesi...
ECHO Painamalla CTRL-C voit keskeyttää tapahtuman!

PAUSE > NUL
DEL %1
SHIFT
GOTO alku

:loppu

Toisen komentojonon kutsuminen - CALL

CALL-komennolla voidaan kutsua komentojonon sisältä toista komentojonoa.

Komentojonoa kutsuttaessa täytyy antaa komentojonon paikka ja nimi sekä komentojonoon liittyvät parametrit. Esimerkiksi seuraavasti:

call komentojonon_nimi parametrit

CALL-komentoa käytettäessä komentojonon kutsumisen jälkeen suoritus palautetaan kutsuvaan komentojonoon.

Ilman CALL-komentoa suoritus loppuisi kutsutun komentojonon suorittamisen jälkeen.

Ympäristömuuttujien käyttäminen

Komennolla SET voidaan tulostaa, muuttaa tai asettaa ympäristömuuttujien arvoja.

Komentorivillä SET-komento näyttää kaikki määritellyt ympäristömuuttujat.

Esimerkissä PATH-ympäristömuuttuja sisältää tiedon hakemistoista, joista etsitään ajettavia ohjelmia, jollei sitä löydy oletushakemistosta.

SET-komennolla PATH-ympäristömuuttujalle.

Yhtäsuuruus merkin jälkeen annetaan %path%, jolla asetetaan arvoksi tämän hetkisen PATH-muuttujan arvo ja sen perään tulee uusi hakemisto.

Hakemistojen välisenä erottimena toimii puolipiste.

set PATH=%PATH%;C:\HAKEMISTO\

Seuraavassa esimerkissä käytetään SET-komentoa ottamaan talteen parametrina tuotu arvo.

testataan parametrien olemassaolo ja tarvittaessa tehdään hakemisto, jonne parametrina annetut tiedostot kopioidaan.

Tämän jälkeen kopioidaan jokaisen parametrin osoittama tiedosto kohdehakemistoon niin kauan kuin parametreja riittää.

Seuraava komentojono on tallennettu nimelle TEESET.bat.

@ECHO OFF

REM Testataan oliko ensimmäistä parametriä
IF "%1"=="" GOTO para

REM Testataan oliko toista parametriä
IF "%2"=="" GOTO para

REM Alustetaan kohde-niminen muuttuja
set kohde=%1

REM Testataan hekemiston olemassaoloa
IF EXIST %1 GOTO kopioi
ECHO Tehdään hakemisto %1
MD %1

:kopioi
IF "%2"=="" GOTO loppu

REM Kopioidaan tiedosto kohde-muuttujan ilmaisemaan hakemistoon
COPY %2 %kohde%
SHIFT
GOTO kopioi

:para
ECHO Et antanut riittävästi parametrejä komentojonolle!
ECHO Kutsu komentojonoa muodossa:
ECHO TEESET hakemistonimi tiedosto1 [tiedosto2 tiedosto3 .. tiedostoN]
:loppu

Muutamien ohjelmien lyhyet käyttöohjeet

Seuraavassa on esiteltynä muutaman ohjelman lyhyet suomenkieliset käyttöohjeet. Kaikkia ohjelmien mahdollisuuksia ei ole käyty läpi, joten ohjelman omaan opasteeseen kannattaa myös tutustua.

ARJ-pakkausohjelma

ARJ on DOS-pohjainen pakkaamisohjelma, jolla pystytään myös purkamaan sillä pakatut tiedostot.

ARJ toimii koneen komentoriviltä eli sen käyttämiseksi joudutaan menemään Command Promptiin (suom. Komentokehote).

ARJ toimii samoin kuin mikä tahansa komentoriviltä ajettava ohjelma. Ohjelman toimintaa ohjataan erilaisilla optioilla, joilla pystytään määrittelemään mitä kulloinkin ollaan tekemässä.

ARJ:n englanninkielisen avustuksen saat näkyviin kirjoittamalla pelkästään ARJ ja hieman tarkemman avustuksen saat kirjoittamalla ARJ /? .

Komento on yleisesti muotoa, jossa hakasulkeissa olevat osat ovat vapaaehtoisia.

ARJ komento [-parametrejä [-parametrejä...]] pakkauksen_nimi [tiedostojen_nimet...] 

Seuraavaan on listattu muutama ARJ:n komento selitteineen.

Komennot

Parametrit

Seuraavassa muutamia esimerkkejä ARJ:n käytöstä.

Tekee oletushakemiston tiedostosta isotied.exe korpunkokoisia paketteja, joista ensimmäinen nimetään koe.arj ja seuraavat koe.a01 jne. Paketit laitetaan hakemistoon d:\omat\nimi\ . Komento on luonnollisestikin järkevä silloin, kun tiedoston koko on huomattavasti suurempi kuin levykkeen koko!

arj a -v1440 d:\omat\nimi\koe.arj isotied.exe

Tekee oletushakemiston kaikista tiedostoista ja sen alihakemistoista paketin nimelle koe.arj. Paketti laitetaan hakemistoon d:\omat\nimi\ . Sopii hyvin tiedostojen varmuuskopiointiin kovalevylle tai koko hakemistorakenteen ottamiseksi mukaan levykkeelle.

arj a -r d:\omat\nimi\koe.arj *.*

Purkaa korppuasemanjuuressa olevan tiedoston isotied.arj annattuun hakemistoon. Jos kyseessä on useamman korpun paketti tullaan uutta korppua kysymään automaattisesti.

arj x -va A:\isotied.arj d:\omat\nimi\

Purkaa hakemistossa D:\omat\nimi\ olevan tiedoston joku.arj oletushakemistoon. Purkaminen tapahtuu alkuperäisen hakemistorakenteen mukaisesti.

arj x -r D:\omat\nimi\joku.arj

SCP (Secure Copy)

Seuraavassa tutustutaan lyhyesti SCP:n käyttöön. SCP on ohjelma, jonka avulla voidaan kopioida tiedostoja kahden koneen välillä turvallisesti. FTP-ohjelmalla kopioitaessa käyttäjätunnus- ja salasanatiedot lähetetään yleensä selväkielisenä. Tämän vuoksi kannattaakin käyttää SCP-ohjelmaa. Seuraavassa erittäin lyhyt ohje SCP:n käyttöön. Halutessasi voit tutustua tarkemmin SCP:n ominaisuuksiin ja optioihin.

scp [-r] [[user@]host1:]filename1  [[user@]host2:]filename2 

Ensimmäisenä parametrina SCP:lle annetaan hakemistorakenne ja tiedosto, joka halutaan kopioida.

Toisena parametrina annetaan hakemistorakenne, jonne tiedosto halutaan kopioida.

Haluttaessa tiedosto voidaan nimetä uudelleen kopioinnin yhteydessä antamalla uusi nimi toisen parametrin yhteydessä.

Lähde- ja kohdehakemistot voivat sijaita palvelinkoneilla, jolloin hakemistoviittausten alkuun on laitettava koneen käyttäjätunnus ja koneen nimi muodossa user@host (esim. peheinon@tukki.cc.jyu.fi). Tämän jälkeen tulee kaksoispistellä (:) erotettuna palvelimella sijaitseva hakemistorakenne.

Optiolla -r voidaan kopioida kokonaisia hakemistorakenteita.

Jos tiedot ovat oikein, niin SCP kysyy salasanan ja käyttäjätunnuksen koneeseen, johon tai josta olet kopioimassa tiedostoja.

Esimerkkejä SCP:n käytöstä

Seuraavassa kopioidaan tukki.cc.jyu.fi-koneenpeheinon käyttäjän kotihakemiston alla olevasta WWW-hakemistosta index.html niminen tiedosto. Lokaalin koneen U:-levyasemassa sijaitsevaan tietoverkot hakemistoon.

scp  peheinon@tukki.cc.jyu.fi:www/index.html  U:\tietoverkot\ 

Seuraavassa esimerkissä kopioidaan U:levyaseman tietoverkot-hakemistosta demo.html niminen tiedosto tukki.cc.jyu.fi koneen peheinon käyttäjän kotihakemiston alla olevaan www/demot-hakemistoon.

scp  U:\tietoverkot\demo.html  peheinon@tukki.cc.jyu.fi:www/demot/

PKZIP ja PKUNZIP

ZIP-paketteja tehdessä voidaan joutua käyttämään eri ohjelmaa purkamiseen ja pakkaamiseen. PKZIP on tarkoitettu tiedostojen pakkaamiseen ja PKUNZIP on tarkoitettu pakkausten purkamiseen. Seuraavassa lyhyet ohjeet kummankin käytöstä. Tarkemmat ohjeet ohjelman käytöstä ja erilaisista optioista saat pelkällä ohjelman nimellä.

PKZIP

Syntaksi: pkzip [-optiot] paketin_nimi   pakattavat_tiedostot 
Optiot

Seuraavassa esimerkissä pakataan pakkaus.zip nimiseen pakettiin oletushakemiston demot-hakemistosta kaikki tiedostot.

pkzip pakkaus.zip  demot\*.*

Seuraavassa esimerkissä lisätään pakkaus.zip nimiseen pakettiin oletushakemiston tiedostot ja kaikkien alihakemistojen tiedostot sekä hakemistorakenne. Jos pakkaus.zip tiedostoa ei ole, niin sellainen luodaan.

pkzip -p -r pakkaus.zip  *.*

PKUNZIP

Syntaksi: pkunzip [-optiot] paketin_nimi purettavat_tiedostot
Optiot

Seuraava esimerkki purkaa oletushakemistoon paketti.zip tiedoston.

pkunzip PAKETTI.ZIP

Seuraava esimerkki purkaa oletushakemistoon paketti.zip tiedoston koko pakatun hakemistorakenteen.

pkunzip  -e -d PAKETTI.ZIP
Kurssimateriaalien käyttäminen kaupallisiin tarkoituksiin tai opetusmateriaalina ilman lupaa on ehdottomasti kielletty!
http://appro.mit.jyu.fi/laitteistot/luennot/luento3/
© Petri Heinonen (peheinon@mit.jyu.fi)<URL: http://www.mit.jyu.fi/peheinon/>
2003-03-13 16:05:48