Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: aapo - 26.01.07 - klo:15.30
-
Minulla on kotihakemistossa javalla tehty ohjelma, joka käynnistyy kun kirjoitan 'java Ohjelma'.
Tämä siis toimii.
Kun teen boottiskriptin (osaan tehdä boottiskriptin), jonka 'järjestysnumero' on 99.
Hakemistoissa /etc/rc*.d/ kaikki tuohon skriptiin viittaavat alkavat K99 ja S99.
Ohjelma ei kuitenkaan käynnisty kun koneen boottaa.
Silti kun ensimmäiseksi käskyksi kirjautumisen jälkeen laittaa 'java Ohjelma', niin toimii.
Syy löytyi:
less /var/log/boot
Syyksi selvisi: Tuo java-Ohjelma lukee käynnistyessään alustus-tiedostoa (puhdasta tekstiä), ja joukossa oli skandinaavisia merkkejä, joita se ei osannutkaan käsitellä oikein.
locale näyttää että fi_FI.UTF-8 ja siinä olisi tarkoitus pysyä.
Varsinainen KYSYMYS:
Missä vaiheessa ubuntu käynnistyessään siirtyy käyttämään tuota UTF-8?
Pystynkö bootissa automaattisesti käynnistämään mitään joka vaatii UTF-8?
(vaatii = haluan että käyttää ja tukee sitä)
(
Triviaalit-ratkaisut:
1) poistan ini-tiedostoista skandit -> työtä ja menetän tärkeitä kirjaimia
2) koneen käynnistyttyä kirjoitan itse tuon java Ohjelma
)
-
En osaa muihin kysymyksiisi vastata mutta javan merkistökoodausta pystyy vaihtamaan antamalla sille ajettaessa parametrin tyyliin "java -Dfile.encoding=ISO-8859-1 Ohjelma".
Sinä tosin halusit utf-8-koodauksen joten vaihdat sen tuon tilalle. Allekirjoittanutta tosin hämmentää miksi java yrittäisi lukea niitä buutissa jollain muulla kuin utf-8-koodauksella.
-
Missä vaiheessa ubuntu käynnistyessään siirtyy käyttämään tuota UTF-8?
Pystynkö bootissa automaattisesti käynnistämään mitään joka vaatii UTF-8?
”Koko Ubuntu” ei käytä koskaan UTF-8-lokaalia, lähinnä vain käyttäjien prosessit. Jos haluat varmistaa, että uusi prosessi käyttää tiettyä lokaalia, käynnistä se esimerkiksi seuraavalla tavalla:
LC_ALL=fi_FI.UTF-8 ohjelmannimi
Jos kyseessä on sh- tai bash-skripti, jonka kaikki komennot halutaan ajaa tietyllä lokaalilla, kannattaa laittaa skriptin alkuun seuraava komento:
LC_ALL=fi_FI.UTF-8 ; export LC_ALL
-
Kiitos, pistin skriptin alkuun
LC_ALL=fi_FI.UTF-8 ; export LC_ALL
Toimii.