Minulla on automaattisesti päivittyvä tiedosto, jossa muutaman rivin jälkeen on tarvittava arvo muodossa temp=xxxxx
Millä komennolla onnistun "sieppaamaan" tuon arvon kyseisestä tiedostosta ja tallentamaan sen johonkin toiseen tiedostoon niin, että uusi tieto menee listan loppuun eikä korvaa sitä tiedostoa?
Entä jos haluan tehdä laskutoimituksen kyseiselle arvolle ennen tallentamista?
Millä komennolla onnistun "sieppaamaan" tuon arvon kyseisestä tiedostosta ja tallentamaan sen johonkin toiseen tiedostoon niin, että uusi tieto menee listan loppuun eikä korvaa sitä tiedostoa?
Entä jos haluan tehdä laskutoimituksen kyseiselle arvolle ennen tallentamista?
Vastaukset 5
Vanhimmat
Käytä sediä.
En ole varma, mutta jokin seuraava voisi toimia. En kokeillut, mutta etsin vain netistä.
Tee bash-skripti, jossa
1. sedillä tai gawkilla arvo talteen.
2. Arvo heitetään bc:lle, jossa tehdään kyseinen lasku.
3. mktempillä tehdään tulostiedosto (tee vain kerran)
4. Lopuksi echo arvo >> tiedosto lisää kysytyn arvon tiedoston loppuun.
Monia tapoja löytyy. Itse käyttäisin seuraavia bash-skriptistä käsin jos tekisin:
-cat
-grep
-cut -b tai cut -d \= -f
-tr
Riippuu pitkälti siitä kuinka "virhealtis" tuo rivi on, monimutkaistuuko käsittely kuinkakin paljon..
esim:
ARVO=`cat file.txt | grep temp | cut -d \= -f 2`
echo $ARVO > file2.txt
niin jäi sanomatta että laskutoimitukseen voi käyttää expr:ää..
Kiitos kovasti, tuo auttoi :)