Pitäisi etsiä tiedostosta rivit jotka ovat muotoa:
[[JOTAIN]]
ja
==JOTAIN==
muttei
[[[EI TÄTÄ]]]
eikä
===EIKÄ TÄTÄ===
eikä
=======EIKÄ MYÖSKÄÄN TÄTÄ========
jne..
Eli pitäisi korjata tämä koodi:
while read inputline
do
if [[ $inputline == ==*== ]]
then
echo $inputline >> uusidata.txt
fi
if [[ $inputline == [[*]] ]]
then
echo $inputline >> uusidata.txt
fi
done < data.txt
Jos rivi sisältää merkkijonon...
13
67
Vastaukset
- Tom peli
grep "^\[\[.*\]\]\|^==.*==" data.txt | \
grep -v "\[\[\[.*\]\]\]\|===.*===" > uusidata.txt
(Toivottavasti palstan softa ei suodata merkkejä...)- Tom peli
grep "^\[\[.*\]\]$\|^==.*==$" data.txt | \
grep -v "\[\[\[.*\]\]\]\|===.*===" > uusidata.txt
Aiemmasta jäi rivin loppumerkki "$" pois. Siis jos on tarkoitus poimia vain rivit, joilla "]]" tai "==" jälkeen ei ole mitään. Samoin poimitaan vain rivit, jotka alkavat "[[" tai "==", mikä olin jo aiemmin ottanut huomioon merkillä "^". - helppppp me
Tom peli kirjoitti:
grep "^\[\[.*\]\]$\|^==.*==$" data.txt | \
grep -v "\[\[\[.*\]\]\]\|===.*===" > uusidata.txt
Aiemmasta jäi rivin loppumerkki "$" pois. Siis jos on tarkoitus poimia vain rivit, joilla "]]" tai "==" jälkeen ei ole mitään. Samoin poimitaan vain rivit, jotka alkavat "[[" tai "==", mikä olin jo aiemmin ottanut huomioon merkillä "^".Saako sen toimimaan tolla "if:lla" niin kuin mulla oli?
Tarkoitus on myöhemmin lisätä muutakin koodia sinne. - debdebdeb
helppppp me kirjoitti:
Saako sen toimimaan tolla "if:lla" niin kuin mulla oli?
Tarkoitus on myöhemmin lisätä muutakin koodia sinne.saa
- Tom peli
helppppp me kirjoitti:
Saako sen toimimaan tolla "if:lla" niin kuin mulla oli?
Tarkoitus on myöhemmin lisätä muutakin koodia sinne.Ilmeisesti harjoitustyössä käsketään käyttämään silmukkaa ja if-lausetta.
- helppppp me
Tom peli kirjoitti:
Ilmeisesti harjoitustyössä käsketään käyttämään silmukkaa ja if-lausetta.
Ei, vaan kuten sanoin if silmukkoihin on tarkoitus lisätä muuta koodia. Esim, tarkoitus on poistaa nuo == ja [[ merkit, jne...
- helppppp me
Tom peli kirjoitti:
Ilmeisesti harjoitustyössä käsketään käyttämään silmukkaa ja if-lausetta.
Heti toinen ongelma:
Jos rivi sisältää merkkijonon:
* Jotain ihan vaan
niin tämä rivi
echo $inputline >> data.txt
lisää tiedostoon:
Desktop Downloads Music Documents Movies Pictures Jotain ihan vaan
Eli suoriittaa: "echo *" kommennon.
Miten sen voi estää? - /7\|/7\
helppppp me kirjoitti:
Heti toinen ongelma:
Jos rivi sisältää merkkijonon:
* Jotain ihan vaan
niin tämä rivi
echo $inputline >> data.txt
lisää tiedostoon:
Desktop Downloads Music Documents Movies Pictures Jotain ihan vaan
Eli suoriittaa: "echo *" kommennon.
Miten sen voi estää?laita joku esimerkki tiedostosta ja esimerkki siitä mitä siitä pitää ottaa.. eihän tuosta kukaan saa enää tolkkua.
- helppppp me
/7\|/7\ kirjoitti:
laita joku esimerkki tiedostosta ja esimerkki siitä mitä siitä pitää ottaa.. eihän tuosta kukaan saa enää tolkkua.
Skripti lukee jokaisen rivin tiedostosta ja tulostaa sen uuteen tiedostoon:
while read inputline
do
echo $inputline >> uusidata.txt
done < data.txt
Ongelma:
Jos "data.txt" tiedostossa on vaikka rivi:
* Hello World
Sen sijan, että se tulostaisi sen sellaisenaan uuteen tiedostoon, se suorittaa:
echo * -kommennon, eli listaa kaikki tiedostot mitä on hakemistossa ja lisää listauksen uuteen tiedostoon.
Kokeile vaikka itse, miten eroaa:
$ echo Hello World > uusi.txt
ja
$ echo * Hello World > uusi.txt - /7\|/7\
helppppp me kirjoitti:
Skripti lukee jokaisen rivin tiedostosta ja tulostaa sen uuteen tiedostoon:
while read inputline
do
echo $inputline >> uusidata.txt
done < data.txt
Ongelma:
Jos "data.txt" tiedostossa on vaikka rivi:
* Hello World
Sen sijan, että se tulostaisi sen sellaisenaan uuteen tiedostoon, se suorittaa:
echo * -kommennon, eli listaa kaikki tiedostot mitä on hakemistossa ja lisää listauksen uuteen tiedostoon.
Kokeile vaikka itse, miten eroaa:
$ echo Hello World > uusi.txt
ja
$ echo * Hello World > uusi.txtniin,
bash skriptaus on yhtä tarkkaa puuhaa kuin krapulan parantelu kossulla tai ripulin parantelu piereskelemällä.
#!/bin/bash
abc="* jotain"
#tama on eri juttu
echo $abc >> teksti.txt
#kuin tama
echo "$abc" >> teksti.txt - helppppp me
/7\|/7\ kirjoitti:
niin,
bash skriptaus on yhtä tarkkaa puuhaa kuin krapulan parantelu kossulla tai ripulin parantelu piereskelemällä.
#!/bin/bash
abc="* jotain"
#tama on eri juttu
echo $abc >> teksti.txt
#kuin tama
echo "$abc" >> teksti.txtKiitos,
Vielä jos keksisi mikä on tehokkain tapa poistaa merkkijonon lopusta ja alusta kaksi merkkia:
abc="[[Hello Wordl]]"
Pitäis saada motoon:
"Hello World" - /7\|/7\
helppppp me kirjoitti:
Kiitos,
Vielä jos keksisi mikä on tehokkain tapa poistaa merkkijonon lopusta ja alusta kaksi merkkia:
abc="[[Hello Wordl]]"
Pitäis saada motoon:
"Hello World"vähän vois itekin yrittää???
abc="aajotainbb"
q=`echo ${abc%??}`
a=`echo ${q#??}`
tai sitte vaikka /\[\[// ja /\]\]//
tms.... - /7\|/7\
/7\|/7\ kirjoitti:
vähän vois itekin yrittää???
abc="aajotainbb"
q=`echo ${abc%??}`
a=`echo ${q#??}`
tai sitte vaikka /\[\[// ja /\]\]//
tms....saako muuten kysyä, että miksi bashilla pitää tämän kanssa tapella?
huvi ja urheilu??? :)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Vasemmistohallitus palauttaa hintasääntelyn, esim. bensalitra vain 1e.
Tuleva vasemmistolaisista koostuva hallitus ottaa käyttöön vanhat hyvät keinot pitää hinnat kurissa. Tähän tarkoitukse834597Vasemmistolainen valehteli jälleen - Purra tai persut eivät luvanneet "euron bensaa"
Väite "euron bensasta" on ensisijaisesti poliittisten vastustajien käyttämä puhdas vale. Persut kyllä kampanjoivat näky1103820Arman Alizadin viesti puna-aktivisteille: "Pitäkää lärvinne nytkin kiinni"
Arman Alizad kritisoi vasemmiston kaksinaismoralismia. Iranissa syntynyt suosikkijuontaja Arman Alizad pakeni perheensä1733612Minja Koskela nostanut vasemmistoliiton kannatuksen ennätykseen
Koskela valittiin puolueen johtoon lokakuussa 2024, ja silloin Ylen kysely antoi puolueelle 9,3 prosentin kannatuksen.552046Antti johtaa Petteriä jo 7,1 prosenttiyksiköllä
Tällä menolla sdp menee kokoomuksesta kierroksella ohi jo tällä vaalikaudella. https://yle.fi/a/74-20213575711928Mitä on tullut
Entisen abcn rakennuksen tilalle se oli tyhjillään monta vuotta siellä oli jo nyt valot onko huoltoasema? 5:30.891259- 1291104
Palosta selvinnyt 18 vuotias munira tarvitsi tulkin kun puhui Iltalehdelle
Suomessa asuva 18 vuotias tarvii tulkin !!! Tää Suomea puhumaton on palossa kuolleen naisen veli ja asui perheen kanssa.1401050- 57963
Mikä homma?
https://share.google/NvruSS4P4EzjTWPov Poliisilla oli keskiviikkona 4. maaliskuuta yksityisasunnossa Saarijärvellä tehtä27882