Illan huuhaa-viritelmä. Alussa olevaan muuttujaan testattava "palindromi".
Merkkijono muutetaan ensin pieniksi kirjaimiksi, jonka jälkeen siitä poistetaan välilyönnit ja muutama erikoismerkki. Sitten sitä verrataan käännettyy versioon.
$ palindromi="Aattona Jaana Aro on siro deeku. Taas sikana kana kissaa tukee. Doris-Noora, Anaa janottaa!"; echo -n "\"$palindromi\" "; palindromi=`echo ${palindromi,,}`; palindromi=`echo ${palindromi//[\!-., ?]/}`; if [ ${palindromi} = `echo ${palindromi} | rev` ]; then echo -n on; else echo -n ei ole; fi; echo " palindromi."
"Aattona Jaana Aro on siro deeku. Taas sikana kana kissaa tukee. Doris-Noora, Anaa janottaa!" on palindromi.
$ palindromi="Aattona Jaana Aro ei ole siro deeku. Taas sikana kana kissaa tukee. Doris-Noora, Anaa ei janota!"; echo -n "\"$palindromi\" "; palindromi=`echo ${palindromi,,}`; palindromi=`echo ${palindromi//[\!-., ?]/}`; if [ ${palindromi} = `echo ${palindromi} | rev` ]; then echo -n on; else echo -n ei ole; fi; echo " palindromi."
"Aattona Jaana Aro ei ole siro deeku. Taas sikana kana kissaa tukee. Doris-Noora, Anaa ei janota!" ei ole palindromi.
Palindromin testaaminen bashilla
5
255
Vastaukset
- Anonyymi
Älä tee tätä kotona
- Anonyymi
Mutta kun minä kerkisin jo tehdä, entä nyt?
- Anonyymi
Olihan tuo karsee yhdellä rivillä. Tehdään siitä tekstitiedosto, joka tallennetaan vaikka nimellä "onko-palindromi.sh", joka sitten muutetaan suoritettavaksi skriptiksi komennolla "chmod x ./onko-palindromi.sh" minkä jälkeen kokeillaan:
$ ./onko-palindromi.sh "Atte diat otti. Hitto! Taidetta!"
"Atte diat otti. Hitto! Taidetta!" on palindromi.
$ ./onko-palindromi.sh "Atte diat vei. Hitto! Missä Atte?"
"Atte diat vei. Hitto! Missä Atte?" ei ole palindromi.
Ja se siihen skriptitiedostoon siis:
#!/bin/bash
# Tulostetaan parametrina annettu merkkijono
# lainausmerkkien sisällä
echo -n "\"$1\" "
# Muutetaan kaikki merkit pieniksi ja
# sijoitetaan muuttujaan x
x=`echo ${1,,}`
# Poistetaan huuto- ja kysymysmerkki, piste,
# pilkku, viiva, välilyönti ja kaksoispiste
x=`echo ${x//[\!-., ?\:]/}`
# Verrataan merkkijonoa käännettyyn
if [ ${x} = `echo ${x} | rev` ]; then
# Jos ovat sama, tulostetaan "on"
echo -n on
else
# Jos eivät ole samoja, tulosteaan "ei ole"
echo -n ei ole
fi
# Tulostuksen loppu
echo " palindromi."- Anonyymi
Ja taas tuli hyvä suoritus mukaan.
Tykkäsin tästä tavasta poistaa merkkejä merkkijonosta:
x=`echo ${x//[\!-., ?\:]/}`
Vaihtoehtoisesti sen voi kirjoittaa näin:
x=$(echo ${x//[\!-., ?\:]/})
t. Turbo Urpo kiittää ja kumartaa. - Anonyymi
Anonyymi kirjoitti:
Ja taas tuli hyvä suoritus mukaan.
Tykkäsin tästä tavasta poistaa merkkejä merkkijonosta:
x=`echo ${x//[\!-., ?\:]/}`
Vaihtoehtoisesti sen voi kirjoittaa näin:
x=$(echo ${x//[\!-., ?\:]/})
t. Turbo Urpo kiittää ja kumartaa.Totta. Gravis ei aina edes erotu välttämättä kovin selvästi. Taitaa olla joku jäänne historiasta.
https://www.gnu.org/software/bash/manual/html_node/Command-Substitution.html
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kannattaako suomalaisen duunarin enää äänestää vasemmistopuolueita
sillä eivät ne tunnu kovasti ajavan suomi-duunarin etuja. Jos katsotaan Vasemmistoliittoa, niin sehän on ihan feministi2005763Jaaha, sitä on vasemmistoryhmä käynyt häiriköimässä Purran kodin vieressä
On näköjään iso lakana levitetty puiden väliin, jossa lukee mm. "Haista vi*** Riikka Purra". Tunkekaa leikkaukset pers..1055641Professori: Maahanmuuttajien rikollisuutta hyssytellään - hävytöntä
Kriminologi Jukka Savolaisen mukaan ikä ja vaikeat olosuhteet eivät riitä selitykseksi. – Tutkitun tiedon valossa sanoi1914644Mistä kummasta voi johtua se, että vasemmistolaiset usein häpeää itseään
voiko se johtua esim. köyhyydestä? Ja tästä on siis ihan suomalainen tutkimus olemassa. "Suomalainen tutkimus osoittaa514063Sanna-kulttilaiset hehkuttaa edelleen Marinia, vaikka esim. Sote oli susi jo syntyessään
mutta kulttilaiset eivät ole järjen jättiläisiä, ja sanoihin Lasse Lehtinenkin, että Suomessa on pohjoismaiden tyhmimmät613960Marin teki sen mihin muut eivät pystyneet, vei susi-Soten maaliin
ja sitten hävittyjen vaalien jälkeen lähtikin vastuuta pakoon...... "Professori: sote-uudistus on täysi susi. Sosiaali313586En koskaan tule sinulle tätä kertomaan
Kun kirjoitin sinulle viimeisintä viestiä, huomasin kyynelten valuvan poskiani pitkin.201484Saatoin tehdä elämäni isoimman virheen
Otsikko kertoo kaiken. Miksei kaikki voi olla yksinkertaisempaa?1301400- 191082
Jotenkin tämä
tilanne taas eskaloitui ja saat mut roikkumaan täällä palstalla. Turhaan. Ei nämä tekstit sua koskaan tavoita. 😭33980