Nykymaailmassa Unix-työkaluohjelmat on ongelma, joka on saanut merkitystä yhteiskunnan eri alueilla. Unix-työkaluohjelmat on kiinnittänyt miljoonien ihmisten huomion ympäri maailmaa, olipa kyseessä sitten henkilökohtainen, työ, sosiaalinen tai politiikka. Sen vaikutus on herättänyt keskustelua, kiistaa ja kasvavaa kiinnostusta ymmärtää sen vaikutukset ja seuraukset. Eri näkökulmista Unix-työkaluohjelmat on onnistunut vaikuttamaan elämäämme odottamattomilla tavoilla, haastaen vakiintuneet paradigmat ja asettaen uusia haasteita tulevaisuudelle. Tässä artikkelissa tutkimme täysin Unix-työkaluohjelmat:n vaikutuksia ja sitä, kuinka se on muuttanut todellisuuttamme viime vuosina.
Unix-työkaluohjelmat on määritelty IEEE:n and The Open Groupin standardin IEEE Std 1003.1 (POSIX) osassa "Shell & Utilities".
Alkuperäinen AT&T Version 1 UNIX sisälsi 60 komentoa: ar, as, b, bas, bcd, boot, cat, chdir, check, chmod, chown, cmp, cp, date, db, dbppt, dc, df, dsw, dtf, du, ed, find, for, form, hup, lbppt, ld, ln, ls, mail, mesg, mkdir, mkfs, mount, mv, nm, od, pr, rew, rkd, rkf, rkl, rm, rmdir, roff, sdate, sh, stat, strip, su, sum, tap, tm, tty, type, un, wc, who ja write.
BSD- ja System V -haaroista periytyvät käyttöjärjestelmät ovat eronneet useissa kohdin ennen POSIX-standardia.
GNU-projekti toteuttaa useita komentoja POSIX-yhteensopivalla tavalla sekä voi sisältää eroja alkuperäiseen AT&T-versioon nähden.
Komento | Kuvaus |
---|---|
admin | Käsittelee SCCS-versiohallinnan historiatiedostoja. |
alias | Luo aliaksia komennoille. Usein komentotulkin sisäinen komento |
ar | Paketointiohjelma objektiarkistoille ja kirjastoille. Käytetään mm. ohjelmakehityksessä. |
as | Assembler-kääntäjäohjelma. |
asa | Muuntaa FORTRAN-tulostuksen tulostettavaan muotoon. |
at | Ohjelmien ajatettuun suoritukseen. |
awk | Ohjelmoitava tekstisuodatin ja komentokieli. |
basename | Tulostaa osia tiedosto- tai polkunimestä. |
batch | Ohjelmien eräajoon. |
bc | Matematiikkakieli. |
bg | Jatkaa taustalle laitettua ohjelmaa. |
break | Käytetään shell-ohjelmissa silmoista ulospääsyyn. |
cc/c89/c99 | C-kielen kääntäjä. Versiosta riippuen c89 tai c99. |
cal | Tulostaa kalenterin. |
cat | Tulostaa tai yhdistää tiedostoja. |
cd | Vaihtaa työhakemistoa (kts. chdir) |
cflow | Luo C-kielisestä ohjelmasta vuokaavion. |
chgrp | Vaihtaa aktiivista ryhmää. |
chmod | Vaihtaa tiedoston oikeuksia. |
chown | Vaihtaa tiedoston omistajaa. |
cksum | Tarkistussumma (CRC) |
cmp | Vertailee tiedostoja. |
comm | Tulostaa tiedostoista yhteiset tai eroavat rivit. |
command | Suorittaa komennon. (ohittaa shell-funktiot ja aliakset) |
compress | Tiedostonpakkausohjelma (korvattu useissa järjestelmissä muilla ohjelmilla kuten gzip ja bzip2) |
continue | Käytetään shell-ohjelmissa silmukan loppuun hyppäämiseen. |
cp | Kopioi tiedostoja ja hakemistoja. Kohdehakemiston aikaleima päivitetään. |
crontab | Käsittelee käyttäjän crontab-tiedostoa, joka on tarkoitettu komentojen toistuvaan ja ajoitettuun suoritukseen. |
csplit | Jakaa tiedostoja sisällön mukaan osiin. |
ctags | Luo tags-tiedostoja vi- ja ed-editorien käyttöön. |
cut | Leikkaa merkkijonoja tai kenttiä tekstirivistä. |
cxref | Luo C-kielisestä ohjelmasta ristiviittaustaulun. |
date | Tulostaa päivämäärän. Muoto on määriteltävissä valitsimilla. |
dd | Kopioi ja muunna tiedostoja. |
delta | Tekee muutostiedostoja SCCS-tiedostoista. |
df | Tulostaa tiedostojärjestelmien vapaan tilan. |
diff | Tulostaa erot tiedostojen välillä. |
dirname | Tulostaa osia polkunimistä. |
du | Näyttää levynkäytön hakemistoissa. |
echo | Tulostaa parametrinsa. |
ed | Riviorientoitunut tekstieditori. |
env | Tulostaa ympäristömuuttujat. |
eval | Suorittaa muita komentoja. |
ex | Tekstieditori. |
exec | Suorittaa toisen ohjelman, päättää komentotulkin. Shellin sisäinen komento. |
exit | Poistuu komentotulkista. |
expand | Laajentaa tabulaattorimerkit välilyönneiksi |
export | Vie komentotulkin sisäisen muuttujan ympäristöön. |
expr | Evaluoi parametrinsa lausekkeena. |
false | Ei tee mitään, epäonnistuu. (vrt. true) |
fc | Käsittelee komentohistoriaa. |
fg | Nostaa pysäytetyn tai taustalla olevan ohjelman etualalle. |
file | Tunnistaa tiedostoja sisällön perusteella. |
find | Etsii tiedostoja tiedostojärjestelmästä. |
fold | Suodatin, joka katkaisee tiedoston pitkät rivit usealle riville. |
fort77 | Fortran 77 -kääntäjä |
fuser | Käyttää tiedostoa käyttävät prosessit. |
gencat | Kääntää ohjelmien kansainvälistämisessä käytettyjä NLS-tiedostoja. |
get | Hae versio SCCS-tiedostosta. |
getconf | Käyttöjärjestelmän sisäisten rajoitusten tulostukseen ja kyselyyn. |
getopts | Komentorivijäsentäjä. |
grep | Tekstihaku tiedostoista lausekkeilla (kts. grep) |
hash | Käsittelee komentotulkin polkuvälimuistia. |
head | Tulosta tiedoston ensimmäiset rivit (vrt. tail) |
iconv | Muunna tekstiä eri merkistöjen välillä. |
id | Näyttää käyttäjän nimen ja käyttäjänumeron. |
ipcrm ipcs |
System V -jaetun muistin, viestijonojen ja semaforien käsittelyyn. |
jobs | Tulosta komentotulkin alla käynnissä olevan komennot. |
join | Tiedostojen yhdistelyyn yhteisten kenttien perusteella. |
kill | Lähetä signaali prosessille. |
lex | Leksikaalinen generaattori. |
link | Linkkaa tiedostoja ja hakemistoja. Ei virheentarkistuksia, joten link osaa tehdä asioita, joihin ln ei sovellu. |
ln | Linkkaa tiedostoja ja hakemistoja. |
locale localedef |
Maa-asetusten tarkasteluun ja määrittelyyn. |
logger | Lähetä viesti systeemilokiin. |
logname | Tulostaa käyttäjän login-nimen. |
lp | Lähettää tiedostoja tulostettavaksi kirjoittimelle. |
ls | Tulostaa hakemistolistauksen. |
m4 | M4-makro-ohjelmointikieli. |
mailx | Sähköpostin lähetys. |
make | Luo ja ylläpitää ohjelmia ja tiedostoja sääntöjen mukaan (Makefile) |
man | Näytä komentojen manuaalisivut. |
mesg | Salli tai kiellä viestien lähettäminen. |
mkdir | Luo hakemisto. |
mkfifo | Luo FIFO. |
more | Näytä tiedosto sivu kerrallaan. |
mv | Siirtää tiedostoja ja hakemistoja tai muuttaa niiden nimeä. |
newgrp | Käynnistä uusi komentotulkki uudella ryhmällä. |
nice | Aja komento muutetulla prioriteetilla. |
nl | Tulosta tiedosto rivinumeroin. |
nm | Listaa objektin symbolit. |
nohup | Suorita ohjelma hyläten SIGHUP-signaalit. |
od | Oktaalidumppi. |
paste | Yhdistele tiedoston rivejä. (vrt. fold) |
patch | Yhdistä muutostiedosto ("patch") tiedostoon. |
pathchk | Tarkista tiedostonimiä ja polkuja. |
pax | POSIX-arkistoija. |
pr | Tulosta tiedosto muotoiltuna. |
printf | Tulosta tekstiä muotoiltuna. |
prs | Näytä osia SCCS-historiasta. |
ps | Näytä prosessilista. |
pwd | Tulosta työhakemisto. |
qalter qdel qhold qmove qmsg qrerun qrls qselect qsig qstat qsub |
Eräajojärjestelmän komentoja, jotka lisättiin vuoden 2001 standardiin. |
read | Lue rivi tekstiä. |
readonly | Komentotulkin sisäinen komento, jolla suojataan muuttujan arvo muutoksilta. |
renice | Vaihda prosessin priotiteettia. |
return | Paluu shell-funktiosta. |
rm | Poista tiedosto tai hakemisto rekursiivisesti. |
rmdel | Poista delta SCCS-tiedostosta. |
rmdir | Poista hakemisto. |
sact | Näytä tiedoston SCCS-aktiviteetti. |
sccs | Source Code Control System (SCCS) -järjestelmän edusta. |
sed | Ohjelmoitava tekstivirran editori. |
set | Aseta shell-muuttujien käyttäytyminen. |
sh | Bourne-komentotulkki. |
shift | Siirrä komentotulkin indeksoidun parametrilistan indeksiä. |
sleep | Pysäytä suoritus määrätyksi ajaksi. |
sort | Lajittele tekstirivejä. |
split | Jaa tiedosto osiin. |
strings | Esti tulostettavat merkit binääritiedostoista. |
strip | Poista objektitiedostosta symbolitaulu, debuggaus ja rivinumerot. |
stty | Aseta terminaalin ominaisuudet. |
tabs | Aseta terminaalin tabulaattorien paikat. |
tail | Tulosta tiedoston viimeiset rivit (vrt. head) |
talk | Keskustele toisen käyttäjän kanssa. |
tee | Tallenna putken kautta kulkeva data tiedostoon. |
test [ |
Evaluoi erilaisia ehtoja. |
time | Näyttää ohjelman suoritukseen kuluvan ajan. |
times | Näytä komentotulkin alla ajettavien ohjelmien viemät suoritusajat. |
touch | Luo tiedosto, tai muuta sen aikaleimoja. |
tput | Alusta terminaali tai kysele terminfo-tietokantaa. |
tr | Muunna merkkejä, ohjelmoitava suodatin. |
trap | Shell-funktio, jolla otettiin kiinni signaaleja. |
true | Ei tee mitään, onnistuu. |
tsort | Topologinen lajittelu. |
tty | Tulosta terminaalilinjan nimi. |
type | Näytä komennon tyyppi (shell-funktio, alias tai ulkoinen komento) |
ulimit | Näytä ja aseta rajoitukset käynnistettäville prosesseille. |
umask | Näytä tai aseta tiedostojen luonnin oletusmaski. |
unalias | Poista komentoalias. |
uname | Näytä käyttöjärjestelmän versio, nimi, arkkitehtuuri, jne. |
uncompress | Pura compress-ohjelmalla pakattu tiedosto. |
unexpand | Muunna välilyönnit tabulaattoreiksi (vrt. expand) |
unget | Peruuta viimeinen SCCS-tiedoston haku. |
uniq | Suodata toistuvat peräkkäiset rivit tiedostosta. |
unlink | Pura tiedoston tai hakemiston linkki, ilman virhetarkistuksia! (vrt. link). Normaali tapa poistaa linkki on "rm". |
unset | Nollaa shell- tai ympäristömuuttuja. |
uucp | UNIX-to-UNIX system copy. |
uudecode uuencode |
Enkoodaa tai dekoodaa tiedosto tekstimuotoon. |
uustat | uucp tilakysely ja työnohjaus. |
uux | uucp-komentosuoritus. |
val | Validoi SCCS-tiedosto. |
vi | Ruutueditori. |
wait | Odota prosessin loppumista. |
wc | Laske tiedoston rivit, sanat ja merkit. |
what | Etsi SCCS-versiotiedot tiedostosta. |
who | Näytä järjestelmän muut käyttäjät. |
write | Lähetä viesti toiselle käyttäjälle (vrt. mesg, talk) |
xargs | Suorita komento, xargs-komennon syöte parametrilistanaan. |
yacc | Luo automaatteja yhteysriippumattoman kielen perusteella. |
zcat | Tulosta compress-ohjelmalla pakattu tiedosto näytölle (vrt. cat) |
: (kaksoispiste) | Ei tee mitään. Voidaan käyttää if ja then -lauseen ehdoissa. |
. (piste) | Suorittaa ohjelman komentotulkin ympäristössä. |
Seuraavat komennot toteutetaan usein komentotulkin sisäisinä: alias, bg, cd, command, false, fc, fg, getopts, jobs, kill, newgrp, pwd, read, true, umask, unalias, wait.