Eli tarkoitus on yhdistää päivä-kohtainen logi kuukausi-kohtaiseen, tavalla että vain ne rivit jotka eivät vielä ole lisätty kuukausi-logiin lisättäisiin.
Logit normaaleja teksti tiedostoja.
Minulla on semmoinen kutka ettei tähän kummoistakaan komento-putkea tarvita, mutta ei se nyt näytä ihan kädenkäänteessäkään onnistuvan.
Bash-skriptaus yhdistämään kaksi logi
10
1811
Vastaukset
- Logittaja
Lisätään vielä täsmennystä.
Kuukausi logissa ei voi olla kahta samanlaista riviä, jokainen rivi on siis unikki. Päivittäin kertyvässä logissa taas voi kaikki rivit olla semmoisia jotka jo ovat kuukausi logissa, ja silloin niitä ei enään saisi lisätä.
Pika-apu olis nyt hienoo. - jhhjgjgfjg
Yhdistä, sorttaa ja poista duplikaatit.
- Kelpaako-tämä-PHP
Tässä PHP -koodina, jossa Plogi = Liitettävä logi, ja Klogi = Koostelogi.
http://pastebin.com/MbCCD037
Näyttää yläpito poistavan näitä vastauksia, tuossa ylempänä tästä ensimäinen versio jonka poistivat. Mikähän niillä mättää, joku torvelo hommissa vissiin. Kuvakaappaus varmuudeksi tästä ylös.
Linux Mint 18.1 Serena
Xfce 64-bit- Bckxknxmx
No ylläpito ymmärtää ohjelmoinnista suunnilleen yhtä paljon, kuin lehmä levytmaidosta. Ja sitten poistellaan kaikki sellainen, joka on oman ymmärryskyvyn ulkopuolella. Modella on jonkinnäköinen krooninen hiekkapimppisyys:)
- lsdljnvg24
Lisätäänkö ne aina kerran päivässä esimerkiksi seuraavana päivänä? Silloinhan voisi tehdä esim:
cat päivälokit* >> kaikkilokit
Deletoi vaan sitten joka kerran ensin pois sen kaikki sisältävät tiedoston, tai vaihtaa nimeä. Tai
cat eilinenloki >> kaikkilokit
jolloin lisätään vaan yksi tiedosto isomman perään. - fadsfdsfsdf
lisää vaan kaikki rivit ja sitten uniq-komennolla poistat duplikaatit.
cat testi.txt |uniq >testi2.txt
testi.txt:
---
abc
abc
§12
§12
§12
123
456
abc
---- sdfsdfdsf
niin ja tosta unohtui välistä sort, eli:
|sort|uniq - Logittaja
sdfsdfdsf kirjoitti:
niin ja tosta unohtui välistä sort, eli:
|sort|uniqTämä aika lähellä.
testi2.txt sisältöä ei saisi aakkostaa, eli rivien järjestys tulisi säilyä, lisäys järjestyksessä.
Vain testi.txt tidoston rivit joita ei vielä ole testi2.txt tiedostossa, lisätään, järjestystä muuttamatta.
Tuo PHP näytäs tekevän sen just oikein, pitää vielä hioa tuon "fadsfdsfsdf" komentorivi putkee, niin ei tarvittas PHP tulkkkia kuvioihin. - Jxnfkfkxkxfk
Mä en keksinyt miten ilman sorttaamista onnistuis.
Mutta perlillä onnistuu ja se kai on asennettuna?
http://unix.stackexchange.com/questions/11939/how-to-get-only-the-unique-results-without-having-to-sort-data
Ja tossa ketjussa mainittiin, että uniq:n sijaan unique:lla vois onnistua?
- Entäs-tämä
Jokos tämä kelpaisi.
- Ensimmäinen rivi yhdistää logit temp.txt sisällöksi.
- Toinen rivi poistaa samat, ja tallentaa Klogi.txt tiedostoon
- Kolmas rivi, poistaa suorituksessa käytetyn temp.txt tiedoston.
cat Plogi.txt Klogi.txt > temp.txt
awk '!seen[$0] ' temp.txt > Klogi.txt
rm temp.txt
Huomaa että lisäys tulee Klogin alkuun, jos haluat lisäyksen Klogin loppuun vaihda ensimmäinen rivi näin:
cat Klogi.txt Plogi.txt > temp.txt
Linux Mint 18.1 Serena
Xfce 64-bit
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Sairaammaksi menee: Musk alkaa sensuroida Zelenskyin viestintää X:ssä
IL: Musk puuttuu Zelenskyin viestintään – X:ään tulossa muutoksia "Elon Musk sanoo korjaavansa X:n, jotta käyttäjät voi3523184Mihin sinussa haluan koskea
Tilanne, että pääsisin tutustumaan eri kohtiin sinussa, mitä haluaisin kokeilla. Käsiin haluaisin tutustua, hieroa niitä672810- 1281806
- 1181490
Toisen ihmisen sydämellä
leikkiminen on äärettömän moraalitonta. Antaa turhiaa toiveita ja sitten olla kuin mitään ei olisi tapahtunut. Kuinka vo1461400Oho! Toivo Sukari paljastaa erikoisista iltatoimista Nadja-vaimon kanssa: "Hän aina putsaa mun..."
Oho! Onpa iltatoimet tällä pariskunnalla. Toivo Sukari ja Nadja Sukari menivät naimisiin v. 2019. Lue lisää: https://301323PAM:in mainos, älä mene tänään ruokakauppaan
kannatan kovasti kaupan työntekijöille lisää liksa. MUTTA lakossa on huonoa, nyt kauppiaat näkevät kuinka vähällä henki1551268- 691100
- 741099
- 701040