Komentorivi Windows-ympäristössä, komentojonot, hyödyllisiä komentoriviohjelmia

Tällä luennolla tutustutaan DOS- Unix-komentotulkkien eroihin, opetellaan tekemään hyvin yksinkertaisia komentojonoja ja tutustutaan muutamiin komentoriviohjelmiin.

Luentotaltiointi

Ongelmia videon katselussa?

Komentotulkit

Komentorivin käyttäminen riippuu paljon käytetystä komentotulkista.

Unix-ympäristöissä on tarjolla useita erilaisia komentotulkkeja

Windows-ympäristössä käytetään yleensä CMD.EXE-komentotulkkia jota myös DOS-nimellä kutsutaan mutta muitakin on tarjolla.

CMD.EXE- ja UNIX-ympäristöjen vastaavuudet

CMD.EXE on Windowsin yhteydestä löytyvä komentorivitulkki jonne pääsee valinnalla Start|Program|Accessories|Command Prompt

CMD.EXE-ympäristössä isoilla ja pienillä kirjaimilla ei ole merkitystä.

UNIX-ympäristössä isoilla ja pienillä kirjaimilla ON merkitystä!

Seuraavaan taulukkoon on merkitty UNIX-komennon yhteyteen myös esimerkki komennon käytöstä.

DOS UNIX UNIX-esimerkki TOIMINTA
\ / hakemistoerotin
/ - ls -al Komentojen valitsimien erotinmerkki
esim. DIR /p
. . cp ~/www/tyovaline/index.html . Oletushakemisto
.. .. cp ../luennot/index.html . Isähakemisto
D: Levyaseman vaihtaminen toiseksi
dir ls -la ls -la tyovaline Näyttää hakemistolistauksen oletushakemistosta tai annetusta hakemistosta
cd cd cd tyovaline/luennot/ Vaihtaa oletushakemiston toiseksi.
mkdir mkdir mkdir tyovaline/luennot/luento1 Tekee hakemiston
rmdir rmdir rmdir luento1 Tuhoaa tyhjän hakemiston
copy cp cp demot/demo1.txt luennot/luento1/luento1.txt Kopioi tiedostoja
type cat cat luento1.txt Tulostaa tiedoston sisällön näytölle
rename mv mv demot demoja Vaihdetaan tiedoston tai hakemiston nimi
del rm rm luento1.txt Tuhoaa tiedoston
move mv mv luento1.txt ../../demot/ Siirtää tiedoston uuteen paikkaan
chmod chmod go+r index.html Muutetaan tiedostojen ja hakemistojen oikeuksia
edit nano nano luento1.txt Yksinkertainen tekstieditori
find grep grep foo bar.txt Tulostaa halutun merkkijonon sisältämät rivit tiedostosta
help ohjelma tai ohjelma /? man ohjelma tai ohjelma ---help man ls Ohjelman avustus tai käyttöohje

Komentojonot

Komentojonoilla voidaan:

Miten komentojono tehdään Windows-ympäristössä?

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-ympäristömuuttujasta täytyy löytyä viittaus hakemistoon, jossa komentojonot sijaitsevat. Ympäristömuuttujia voi käsitellä set-komennolla.

Monimutkaisempi esimerkki

  1. Komentojonon alussa tulostetaan näkyville viesti käyttäjälle
  2. tulostetaan yksi tyhjä rivi.
  3. kopioidaan E-levyaseman (esim. USB-tikku) juuresta kaikki tiedostot U-levyaseman juuressa sijaitsevaan tikku-hakemistoon.
ECHO Kopioidaan levykkeen tiedostoja kovalevylle
ECHO.
COPY E:\*.* U:\tikku

Edellisen esimerkin komentojono on tallennettu nimelle kopioi.bat.

C:\cmd>kopioi

C:\cmd>ECHO Kopioidaan tikun tiedostoja U:-asemalle
Kopioidaan tikun tiedostoja U:-asemalle

C:\cmd>ECHO.

C:\cmd>COPY e:\*.* u:\tikku
a:\selkkarit.html
a:\Esipuhe.doc
a:\kysely.html
a:\WindowsVista.doc
a:\index.html
        5 file(s) copied
C:\cmd>

Komentojonot unixissa

Komentojonot voivat unixissa olla minkänimisiä tahansa kunhan kyseiselle tiedostolle annetaan suoritusoikeus.

Tiedostojen oikeuksia voi muuttaa chmod-komennolla tai FileZillalla.

Lisätietoa komentojonoista

Hyvien komentojonojen tekeminen edellyttää ohjelmointitaitoa. Lisätietoa aiheesta löytyy osoitteista:

Komentoriviohjelmia

Seuraavat ohjelmat toimivat Windows-ympäristössä mutta useimmille löytyy vastine myös Unixista.

scp

scp on komentoriviltä toimiva FileZillaa vastaava ohjelma tiedostojen turvalliseen kopiointiin koneiden välillä.

Seuraavassa esimerkissä kopioidaan paikallisen koneen oletushakemistossa olevan tiedosto.txt-tiedoston jalava-koneeseen kimaitt-käyttäjän kotihakemiston alla sijaitsevaan temp-hakemistoon. Scp kysyy kopioinnissa tarvittavat salasanat.

scp tiedosto.txt kimaitt@jalava.cc.jyu.fi:temp/

Seuraavassa esimerkissä kopioidaan jalava-koneesta kimaitt-käyttäjän kotihakemistossa olevasta temp-hakemistosta tiedosto tiedosto.txt käyttämäsi koneen oletushakemistoon nimelle teksti.txt.

scp kimaitt@jalava.cc.jyu.fi:temp/tiedosto.txt teksti.txt

Seuraavassa esimerkissä kokonainen tyovaline-hakemisto siirretään palvelimen kotihakemistossa olevaan opinnot-hakemistoon:

scp -r tyovaline kimaitt@jalava.cc.jyu.fi:opinnot/

SCP:n saat omalle koneelle hakemalla Putty SCP:n.

Komentorivi- ja pääteohjelmia Unix-ympäristössä

Seuraavassa on esitelty Unix-ympäristössä toimivia hyödyllisiä komentoriviohjelmia ja päätteellä käytettäviä ohjelmia.

Alpine-sähköpostiohjelma

Alpine on hyvä ja helppokäyttöinen sähköpostiohjelma, jota kannattaa opetella käyttämään. Seuraavassa muutamia Alpinen hyviä puolia ja ominaisuuksia.

Huonona puolena on liitetiedostojen hankalahko käsittely.

nano-editori

nano on useimmista Unix-koneista löytyvät yksinkertainen tekstieditori jolla voi muokata esim. www-sivuja.

Sähköpostin suodatus

Alpinen tärkeimmät komennot

On olemassa paljon muitakin vastaavia sähköpostiohjelmia. esim. Mutt.

Irssi

Irssi on unixissa toimiva IRC-ohjelma

Irssin tärkeimmät komennot

Muita ohjelmia

Käyttäjien kommentit

Kommentoi tätä sivua Lisää uusi kommentti
Kurssimateriaalien käyttäminen kaupallisiin tarkoituksiin tai opetusmateriaalina ilman lupaa on ehdottomasti kielletty!
http://appro.mit.jyu.fi/tyovaline/luennot2/luento3/
© Antti Ekonoja (antti.j.ekonoja@jyu.fi) <http://users.jyu.fi/~anjoekon/>
Tommi Lahtonen (tommi.j.lahtonen@jyu.fi) <http://hazor.iki.fi/>
2012-08-13 12:33:01
Informaatioteknologia - Jyväskylän yliopiston informaatioteknologian tiedekunta