Ero sivun ”Komentorivivinkkejä” versioiden välillä
Siirry navigaatioon
Siirry hakuun
pikkuparantelua
Pb (keskustelu | muokkaukset) pEi muokkausyhteenvetoa |
Pb (keskustelu | muokkaukset) (pikkuparantelua) |
||
Rivi 1: | Rivi 1: | ||
Valtaosa vinkeistä on testattu melko tavanomaisessa [[Red Hat]] 8.0 -asennuksessa. Pääosa näistä toiminee muissakin jakeluissa, osa soveltaen myös muissa Unix-tyyppisissä järjestelmissä. Kaikki vinkit eivät välttämättä toimi kaikissa [[komentotulkki|komentotulkeissa]]. | |||
# Komennolla <tt>[[df]] -h</tt> saat siistin esityksen levyosioiden täyttöasteesta. | # Komennolla <tt>[[df]] -h</tt> saat siistin esityksen levyosioiden täyttöasteesta. | ||
Rivi 13: | Rivi 13: | ||
# Ctrl-A vie rivin alkuun komentokehotteessa, Ctrl-E rivin loppuun. | # Ctrl-A vie rivin alkuun komentokehotteessa, Ctrl-E rivin loppuun. | ||
# Komennolla [[bc]] -l saat pienen laskimen. Käytettävissä on normaalit laskutoimitukset ja lisäksi voit sijoittaa arvoja muuttujiin basic-kielen tapaan. | # Komennolla [[bc]] -l saat pienen laskimen. Käytettävissä on normaalit laskutoimitukset ja lisäksi voit sijoittaa arvoja muuttujiin basic-kielen tapaan. | ||
# bc käyttää samaa readline-kirjastoa kuin komentotulkki, joten samat Ctrl-R, Ctrl-A ja Ctrl-E toimivat siinäkin. Samalla tavoin toimii myös mm. matriisilaskennan ohjelma Octave. | # bc käyttää samaa [[readline]]-kirjastoa kuin komentotulkki, joten samat Ctrl-R, Ctrl-A ja Ctrl-E toimivat siinäkin. Samalla tavoin toimii myös mm. matriisilaskennan ohjelma [[Octave]]. | ||
# MS-DOS -levykkeiden käsittely onnistuu mtools -paketilla. Kokeile mitä tekevät <tt>mdir a:</tt> ja <tt>mcopy tiedosto a:</tt>. | # MS-DOS -levykkeiden käsittely onnistuu mtools -paketilla. Kokeile mitä tekevät <tt>mdir a:</tt> ja <tt>mcopy tiedosto a:</tt>. | ||
# <tt>tr</tt> -komennolla voit muuttaa merkkejä, kokeile vaikka: <tt>echo kanalassa | tr a b</tt>. | # <tt>tr</tt> -komennolla voit muuttaa merkkejä, kokeile vaikka: <tt>echo kanalassa | tr a b</tt>. | ||
Rivi 45: | Rivi 45: | ||
# Tiedosto /etc/issue tulostetaan ruudulle ennen "login:"-kehotetta. | # Tiedosto /etc/issue tulostetaan ruudulle ennen "login:"-kehotetta. | ||
# Komento <tt>find . -type f -mmin -30 -print</tt> hakee työhakemistosta alaspäin kaikki tiedostot, joita on muokattu viimeisen puolen tunnin sisään. | # Komento <tt>find . -type f -mmin -30 -print</tt> hakee työhakemistosta alaspäin kaikki tiedostot, joita on muokattu viimeisen puolen tunnin sisään. | ||
# Levypinnan saa pyyhittyä tyhjäksi komennolla <tt>dd if=/dev/zero of=/dev/fd0</tt>. Esimerkki tyhjentää levykkeen, samalla tavalla voi pyyhkiä kiintolevyjä, esim. /dev/hda on IDE0-väylän master-levy. Usein suositellaan /dev/zero -laitteen sijasta /dev/ | # Levypinnan saa pyyhittyä tyhjäksi komennolla <tt>dd if=/dev/zero of=/dev/fd0</tt>. Esimerkki tyhjentää levykkeen, samalla tavalla voi pyyhkiä kiintolevyjä, esim. /dev/hda on IDE0-väylän master-levy. Usein suositellaan /dev/zero -laitteen sijasta /dev/urandom -laitetta, mutta silloin pyyhintä hidastuu mateluksi. Myös astetta parempaa satunnaislukua tuottavan /dev/random-laitteen käyttö on mahdollista, mutta tällöin toimenpiteen suoritus hidastuu edelleen. | ||
# <tt>head -5 tiedostonnimi</tt> tulostaa tiedoston viisi ensimmäistä riviä. <tt>head -c 5 tiedostonnimi</tt> tulostaa viisi ensimmäistä merkkiä. <tt>tail -5 tiedostonnimi</tt> ja <tt>tail -c 5 tiedostonnimi</tt> toimivat vastaavasti. | # <tt>head -5 tiedostonnimi</tt> tulostaa tiedoston viisi ensimmäistä riviä. <tt>head -c 5 tiedostonnimi</tt> tulostaa viisi ensimmäistä merkkiä. <tt>tail -5 tiedostonnimi</tt> ja <tt>tail -c 5 tiedostonnimi</tt> toimivat vastaavasti. | ||
# <tt>[[wc]] *.txt</tt> antaa listan hakemiston sisältämistä .txt -päätteisistä tiedostoista ja jokaisesta rivien, sanojen ja merkkien lukumäärän. | # <tt>[[wc]] *.txt</tt> antaa listan hakemiston sisältämistä .txt -päätteisistä tiedostoista ja jokaisesta rivien, sanojen ja merkkien lukumäärän. | ||
Rivi 51: | Rivi 51: | ||
# [[strings]] -komennolla voit hakea merkkijonoja binäärimössöstä. Esim. <tt>strings jokudoku.doc</tt> näyttää yleensä Word-documentin sisältämän tekstin jotenkin luettavassa muodossa. | # [[strings]] -komennolla voit hakea merkkijonoja binäärimössöstä. Esim. <tt>strings jokudoku.doc</tt> näyttää yleensä Word-documentin sisältämän tekstin jotenkin luettavassa muodossa. | ||
# Kaikki Microsoft Office -dokumentit löydät komennolla <tt>find . -type f -exec sh -c "file \"{}\" | grep -q \"Microsoft Office Document\" && echo \"{}\"" \;</tt> | # Kaikki Microsoft Office -dokumentit löydät komennolla <tt>find . -type f -exec sh -c "file \"{}\" | grep -q \"Microsoft Office Document\" && echo \"{}\"" \;</tt> | ||
# Normaalissa konsolissa voi Shift+Page Up -näppäilyllä siirtyä pari ruudullista taaksepäin. | # Normaalissa konsolissa voi Shift+Page Up -näppäilyllä siirtyä pari ruudullista taaksepäin. Huomioi kuitenkin, että esimerkiksi X:ssä käynti nollaa tämän ruutuhistorian. | ||
# Komennolla <tt>ls -l | colrm 10 30</tt> saat tiedostolistauksesta pois tiedoston omistajan ja ryhmän. | # Komennolla <tt>ls -l | colrm 10 30</tt> saat tiedostolistauksesta pois tiedoston omistajan ja ryhmän. | ||
# Komennolla <tt>cut -d ' ' -f 2</tt> tiedostonnimi voit tulostaa tiedoston jokaisen rivin toisen sanan. | # Komennolla <tt>cut -d ' ' -f 2</tt> tiedostonnimi voit tulostaa tiedoston jokaisen rivin toisen sanan. | ||
# Kaikkiin html-tiedostoihin saat LANG-attribuutin seuraavasti: <tt>find . -name "*.html" -print | xargs perl -e 's/<HTML>/<HTML LANG="fi">/gi' -p -i.bak</tt> | # Kaikkiin html-tiedostoihin saat LANG-attribuutin seuraavasti: <tt>find . -name "*.html" -print | xargs perl -e 's/<HTML>/<HTML LANG="fi">/gi' -p -i.bak</tt> | ||
# Virheilmoituksetkin saa ohjattua tiedostoon. Kokeile esim. <tt>find hakemistojotaeiole >& find-tuloste.txt</tt> | # Virheilmoituksetkin (STDERR) saa ohjattua tiedostoon. Kokeile esim. <tt>find hakemistojotaeiole >& find-tuloste.txt</tt> | ||
# which-komennolla näkee mistä polussa oleva ohjelmatiedosto löytyy. Kokeile esim. <tt>which ldd</tt> | # which-komennolla näkee mistä polussa oleva ohjelmatiedosto löytyy. Kokeile esim. <tt>which ldd</tt> | ||
# Haluatko varmasti hyvän salasanan? Sano <tt>head -c 6 /dev/random | mimencode</tt> | # Haluatko varmasti hyvän salasanan? Sano <tt>[[head]] -c 6 /dev/random | mimencode</tt> | ||
# Ellet tiedä mitä /etc:n alla olevaa tiedostoa säätää, voit hakea jonkin sanan sisältäviä tiedostoja: <tt>grep --recursive "localdomain" /etc</tt> | # Ellet tiedä mitä /etc:n alla olevaa tiedostoa säätää, voit hakea jonkin sanan sisältäviä tiedostoja: <tt>grep --recursive "localdomain" /etc</tt> | ||
# Komennoilla <tt>[[who]]</tt> ja <tt>w</tt> saat tietoa järjestelmää parhaillaan käyttävistä. Esimerkiksi <tt>w -s</tt> näyttää kätevässä muodossa kuka tekee mitäkin. | # Komennoilla <tt>[[who]]</tt> ja <tt>w</tt> saat tietoa järjestelmää parhaillaan käyttävistä. Esimerkiksi <tt>w -s</tt> näyttää kätevässä muodossa kuka tekee mitäkin. | ||
Rivi 72: | Rivi 72: | ||
# <tt>[[tac]] tiedostonnimi</tt> tulostaa tiedoston rivi kerrallaan alusta loppuun. <tt>rev tiedostonnimi</tt> tulostaa jokaisen rivin väärinpäin, ja <tt>rev tiedostonnimi | tac</tt> tulostaa koko tiedoston väärinpäin. | # <tt>[[tac]] tiedostonnimi</tt> tulostaa tiedoston rivi kerrallaan alusta loppuun. <tt>rev tiedostonnimi</tt> tulostaa jokaisen rivin väärinpäin, ja <tt>rev tiedostonnimi | tac</tt> tulostaa koko tiedoston väärinpäin. | ||
# <tt>[[top]]</tt> näyttää jatkuvasti päivittyvän listan ajossa olevista ohjelmista. Painamalla h-kirjainta saat ohjeen käytössä olevista komennoista. q-kirjaimella pääset pois ohjelmasta. | # <tt>[[top]]</tt> näyttää jatkuvasti päivittyvän listan ajossa olevista ohjelmista. Painamalla h-kirjainta saat ohjeen käytössä olevista komennoista. q-kirjaimella pääset pois ohjelmasta. | ||
# <tt>volname</tt> kertoo CD-asemassa olevan levyn nimen. | # <tt>[[volname]]</tt> kertoo CD-asemassa olevan levyn nimen. | ||
# <tt>cat tiedostonnimi | while read; do echo $REPLY; sleep 5; done</tt> tulostaa tiedoston rivi kerrallaan viiden sekunnin välein. | # <tt>[[cat]] tiedostonnimi | while read; do echo $REPLY; sleep 5; done</tt> tulostaa tiedoston rivi kerrallaan viiden sekunnin välein. | ||
# Tervehdyksen pienellä viiveellä saa näin: <tt>temp=$IFS; IFS=$''; echo "Hei kaikki" | while read -n 1; do echo -n $REPLY; usleep 100000; done; IFS=$temp</tt> | # Tervehdyksen pienellä viiveellä saa näin: <tt>temp=$IFS; IFS=$''; echo "Hei kaikki" | while read -n 1; do echo -n $REPLY; usleep 100000; done; IFS=$temp</tt> | ||
# Komennolla <tt>yes</tt> voit tulostaa y-kirjaimia esim. putkessa ohjelmalle, joka kyselee liikaa "Oletko aivan varma?". <tt>yes n</tt> tulostaa n-kirjaimia ja <tt>yes moro</tt> tervehtii käyttäjää ad infinitum. | # Komennolla <tt>yes</tt> voit tulostaa y-kirjaimia esim. putkessa ohjelmalle, joka kyselee liikaa "Oletko aivan varma?". <tt>yes n</tt> tulostaa n-kirjaimia ja <tt>yes moro</tt> tervehtii käyttäjää ad infinitum. | ||
# Tulostuskin onnistuu komentoriviltä, kokeile vaikka <tt>lpr jokudoku.txt tai cal | lpr</tt> | # Tulostuskin onnistuu komentoriviltä, kokeile vaikka <tt>lpr jokudoku.txt tai [[cal]] | lpr</tt> | ||
# Kun tehdään, niin tehdään kunnolla. Kun tehdään kalenteri kunnolla, niin huomioidaan juliaanisen kalenterin vaihtuminen gregoriaaniseen. Kokeile: <tt>[[cal]] 9 1752</tt> | # Kun tehdään, niin tehdään kunnolla. Kun tehdään kalenteri kunnolla, niin huomioidaan juliaanisen kalenterin vaihtuminen gregoriaaniseen. Kokeile: <tt>[[cal]] 9 1752</tt> | ||
#<nowiki>WWW-sivuston kaikkien .html -sivujen META KEYWORDS -tageista saa helposti sivulistan tällä komennolla | #<nowiki>WWW-sivuston kaikkien .html -sivujen META KEYWORDS -tageista saa helposti sivulistan tällä komennolla |