Käsikirja
2 FreeBSD Käyttöjärjestelmä
2.5 Komentotulkit
3 Asennetut palvelinohjelmistot ja niiden käyttäminen
2.5 Komentotulkit
FreeBSD:llä työskennellessäsi tulee päivittäin käytettyä komentokehotetta jota kutsutaan shelliksi.
Shellin päätehtävä on ottaa vastaan komentoja ja ajaa ne. Moniin shelleihin on myös tehty funktioita
auttamaan joka päiväisiä tehtäviä kuten tiedostojen hallinta, komentorivi editointi,
käsky makroja ja ympäristömuuttujia. FreeBSD:ssä on shellejä, kuten sh, Bourne shell ja tcsh, parannettu
C-shell. Monet muut shellit ovat saatavilla FreeBSD:n portti kokoelmasta, kuten zsh ja bash.
Mitä shelliä sinä käytät? Se on makuasia. Olet ehkä C ohjelmoija? Voit pitää sopivana C:n tapaista shelliä
kuten tcsh. Ehkä jos olet vaihtanut linuxista tai olet uusi UNIX® komentorivi käyttäjä voit kokeilla bash:ä.
Pointti on että jokaisella shellillä on omat ominaisuutensa jotka voivat sopia tai eivät voi sopia
työympäristöösi. Yhteinen tekijä kaikilla shelleillä on että kirjotettuasi muutaman kirjaimen komennosta
tai tiedoston nimestä, osaa shelli täydentää komennon/tiedoston nimen painettuasi 'tab' näppäintä.
esimerkiksi, jos sinulla on kaksi tiedostoa 'foobar' ja 'foo.bar' ja haluat poistaa foo.bar:n.
sinun pitää kirjoittaa rm fo[TAB].[TAB]. shelli tulostaa rm foo[BEEP].bar.
[BEEP] on konsolin "torvi", mikä kertoo että tiedoston nimeä ei saatu täytettyä täysin koska löytyi
enemmän kuin yksi sopiva nimi. Molemmat foobar ja foo.bar alkavat kirjaimilla 'fo', mutta shelli pystyi
täydentämään 'foo' asti. kirjoita perään viel '.' ja sitten painat tabulaattoria, shelli pystyy
täydentämään loput tiedostonimestä sinulle.
Toinen ominaisuus shelleissä on ympäristömuuttujat. Ympäristömuuttujat ovat muuttuja kirjain pareja
talletettuna shellin muuttuja tilaan. Tätä tilaa pystyy lukemaan mikä tahansa shellin käynnistämä ohjelma
, ja täten sisältää paljon ohjelma konfiguraatioita. Tässä on lista yhteisistä ympäristömuuttujista
ja mitä ne tarkoittavat:
USER | nykyisen kirjautuneen käyttäjän nimi. |
PATH | Polut joista etsitään Binääreitä pilkulla eroiteltuna. |
DISPLAY | X11 verkon nimi johon yhdistetty, jos mahdollista. |
SHELL | nykyinen shelli |
TERM | Käyttäjä terminaalin nimi. |
TERMCAP | Tietokanta näppäimistö funktioista, joita käytetään eri terminaaleissa |
OSTYPE | käyttöjärjestelmän tyyppi |
MACHTYPE | CPU:n arkkitehtuuri jolla järjestelmä pyörii. |
EDITOR | Teksti editori |
PAGER | teksti rivittäjä |
MANPATH | kaksoispisteellä eroteltu lista hakemistoista manuaalin etsimistä varten. |
Kuinka vaihdan komentotulkkini?
Helpoin tapa vaihtaa shelliä on käyttää chsh komentoa. chsh laittaa sinut editoriin, joka on määritetty EDITOR ympäristö-
muuttujaan, jos ei ole määritetty pääset editoimaan vi:llä.
Voit myös antaa chsh:lle -s argumentin, tämä asettaa shellin sinulle, tarvitsematta mennä edes editoriin.
Esimerkiksi, jos haluat vaihtaa shellisi bash:ksi, saeuraavan pitäisi tehdä temput:
chsh -s /usr/local/bin/bash
Ilman -s argumenttiä homma onnistuu myös editorissa.
Huom. Shellin jonka haluat, täytyy löytyä /etc/shells tiedostosta, jos olet asentanut shellin portti-
kokoelmasta, silloin tämä pitäisi olla jo valmiina siellä. Ollessasi asentanut shellin käsin, täytyy tehdä
seuraavasti:
Konsolini asettaminen Bourne Shell tyylisillä komentotulkeilla
Komentotulkkien asetustiedostot
/etc/zshrc | Klobaali asetustiedosto zsh:lle (Kaikki käyttäjät) |
/etc/profile | Klobaali asetustiedosto bash:ille (Kaikki käyttäjät) |
~/.zshrc | Käyttäjän oma asetustiedosto zsh:lle (Paikallinen käyttäjä profiili) |
~/.profile | Käyttäjän oma asetustiedosto bash:lle (Paikallinen käyttäjä profiili) |
Muuttujat ja niiden asettaminen tiedostoissa
Tiedostoissa esitellään joukko muuttujia alla olevaan tapaan ja otetaan lopuksi käyttöön ne export komennolla luettelemalla käyttöön otettavien muuttujien nimet export:in perään. Sama pätee konsolissa, mikäli haluat lisätä muuttujia, muuttujat esitellään seuraavasti: muuttuja1=jotain, jonka jälkeen otat muuttujan käyttöön "export muttuja1" komennolla.
Esimerkki kuinka muuttujat voidaan esitellä:
muttuja1=jotain
muuttuja2=jotain
muuttuja=3=jotain
export muuttuja1 muuttuja2 muuttuja3
Aliakset
Aliakset ovat eräänlaisia pikakomentoja, jotka ovat asetettu komentotulkin asetustiedostoon. Esimerkkinä pari aliasta.
Esim. alias dir='ls -l' mikäli joudut työskentelemään usein Dos:sin kanssa ja et opi muistamaan, että ls komento listaa tiedostot ja hakemistot. voi luoda dir nimisen aliaksen, joka suorittaa ls -l komennon. Tällöin tiedostot ja hakemistot listautuvat samaan tyyliin kuin Dos:issa kirjoittamalla dir. Voit myös luoda käteviä oletus määreitä, kuten seuraavassa aliaksessa ls -G, kun annat ls komennon suoritetaan automaattisesti ls -G komento (ls -G tuo värit esiin.)
Esimerkki aliaksen luomisesta:
alias ls='ls -G'
eli ls komento vastaa ls -G komentoa
alias komento1="komento2"
Selvitys
komento=1 komento joka syötetään konsolissa riville
komento2 = komento, joka suoritetaan kun syötetään komento1
Komentotulkit ja lokalisaatio muuttujat
Mitä lokalisaatiolla tarkoitetaan? (localized)
Lokalisaatio sana tulee sanasta "localized", joka tarkoittaa paikallistunut englanniksi. Eli kyseessä on paikallisten asetusten määrittely. Tunnetaan myös Windowsissa "kansalliset asetukset". Unixeissa tähän liittyvät yleensä merkistö ja kielen asetukset.
Eri ohjelmat hakevat joskus kielen ja näppäimistön merkistö asetukset komentotulkin käyttämistä lokalisaatio asetuksista. Toisinaan voit törmätä ongelmaa, jolloin esimerkiksi graafisessa tilassa jokin ohjelma ei tunnista ä ja ö merkkiä. Tällöin todennäköinen syy on, ettet ole määrittänyt lokalisaatio oikein ja järjestelmäsi käyttää oletuksena UTF-8 näppäimistöä. Tähän ongelmaan itse olen joskus törmännyt Xchat ohjelmalla, siten että ääkköset ovat näkyneet "liittyessäni kanaville ja puhuessani siellä ä ja ö merkki eivät ole toimineet". Sisäänkirjautumis ikkunassasi ei ä ja ö merkki toimittomuudessa ei ole kysymyksessä komentotulkin lokalisaatiosta vaan näppäimistön asetuksista.
Huom. ä ja ö:n kirjaimen konsolissa toimiminen ei tarkoita sitä, että lokalisaatio asetuksesi olisivat määriteltyinä. lisää LANG muuttujasta komennolla set (bash tyyliset komentotulkit ja setenv "tcsh" (c komentotulkit) tyyliset komentotukit).
Kuinka voin tarkastella muuttujiani?
Kaikki muuttujiani
set
Yksittäistä muuttujaa
echo $MUUTTUJA
esim. echo $LANG
esimerkkimme muuttuja tulostaa LANG muuttujan sisällön ruudullesi.
Suomalainen näppäimistö ilman euro merkkiä:
ISO8859-1
Suomalainen näppäimistö euromerkin kanssa
ISO8559-15
Bash tyyppiset muuttujat, jotka määrittävät lokalisaation asetuksia:
LANG=fi_FI.ISO8859-15
MM_CHARSET=ISO-8859-15
Esimerkki tiedoston sisältö. (valmiiksi suomi asetukset) seuraava voi muuttaa ohjelmia suomenkieliseksi, mikäli haluat pitää järjestelmäsi täysin Englannin-kielisenä voit muuttaa LANG=fi_FI kohdan uk_UK:si.
LANG=fi_FI.ISO8859-15
MM_CHARSET=ISO-8859-15
export LANG MM_CHARSET
Väriasetukset bourne shell komentotulkeissa.
LSCOLORS=ExGxexDxCxdxBxBxBxBxgx
Kirjaimet ja niiden merkitys edellisessä rivistössä. asetukset tapahtuvat seuraavasti kahden kirjaimen sarjoissa. ensimmäinen kirjaimista tarkoittaa päällä näytettävää väriä ja viimeinen taustaväriä.
a | Musta |
b | Punainen |
c | Vihreä |
d | Ruskea |
e | Sininen |
f | magenta (punertava) |
g | syaani |
h | Vaalean harmaa |
A | Lihavoitu musta, Näyttää yleensä tumman harmaana |
B | Lihavoitu punainen |
C | Lihavoitu vihreä |
D | Lihavoitu ruskea, näkyy yleensä kellertävänä |
E | Lihavoitu sininen |
F | Lihavoitu magenta (punertava) |
G | Lihavoitu syaani |
H | Lihavoitu vaalean harmaa; näyttää yleensä kirkkaan valkoiselta |
x | oletus etuala ja taustaväri (musta) |
Merkkien merkitys purettuina kahden kirjaimen sarjoissa.
1. | Hakemisto |
2. | Suora linkki (symboolinen linkki) |
3. | soketti |
4. | putki |
5. | ohjelma (+x varustettu tiedosto) |
6. | erikois blokki |
7. | Erikois kirjain |
8. | Setuid suoritettava ohjelma tai tiedosto |
9. | Setgid suoritettava ohjelma tai tiedosto |
10. | Hakemisto joka on kirjoitettavissa muille sticky määrellä |
11. | Hakemisto joka on kirjoitettavissa muille, ilman sticky määrettä |
ExGxexDxCxdxBxBxBxBxgx Purettuina sarjoihin.
Merkkijono | Sarja | Merkitys Väreissä | Vaikuttaa Väriin |
Ex | 1. | Lihavoitu sininen, mustalla taustalla | Hakemisto |
Gx | 2. | Lihavoitu syaani, mustalla taustalla | Suora linkki (symboolinen linkki) |
ex | 3. | Sininen, mustalla taustalla | soketti |
Dx | 4. | Lihavoitu ruskea, mustalla taustalla | putki |
Cx | 5. | Lihavoitu, vihreä mustalla taustalla | ohjelma (+x varustettu tiedosto) |
dx | 6. | Ruskea, mustalla taustalla | erikois blokki |
Bx | 7. | Lihavoitu punainen, mustalla taustalla | Erikois kirjain |
Bx | 8. | Lihavoitu punainen, mustalla taustalla | Setuid suoritettava ohjelma tai tiedosto |
Bx | 9. | Lihavoitu punainen, mustalla taustalla | Setgid suoritettava ohjelma tai tiedosto |
Bx | 10. | Lihavoitu punainen, mustalla taustalla | Hakemisto joka on kirjoitettavissa muille sticky määrellä |
gx | 11. | syaani, mustalla taustalla | Hakemisto joka on kirjoitettavissa muille, ilman sticky määrettä |
Ensimmäinen kirjain tarkoittaa päällä näkyvää väriä ja viimeinen kirjain (x) taustaväriä
Värien asettaminen:
Lisää asetustiedostoosi seuraava rivi:
LSCOLORS=ExGxaxDxCxdxBxBxBxBxgx
Lisää export:iin: LSCOLORS, jotta muttujasi asetetaan.
Tässä esimerkki omasta zshrc:n ja bashin asetustiedostani:
alias ls='ls -G'
LSCOLORS=ExGxexDxCxdxBxBxBxBxgx
LANG=fi_FI.ISO8859-15
MM_CHARSET=ISO-8859-15
export LSCOLORS LANG MM_CHARSET
Lisää bashin ja zsh:n muuttujista man bash ja man zsh.
|