Portaal Portaal Pingviini veeb foorumi pealeht
  Viki  |  IRC  |  Otsing  |  Küsimused ja vastused  |  Profiil  |  Privaatsõnumite vaatamiseks logi sisse  | Logi sisse või Registreeru
<empty>
Vaata järgmist teemat
Vaata eelmist teemat

Postita uus teemaVasta teemale
Autor Sõnum
spott
Admin
Admin


Vanus: 43
Liitunud: 04.06.2005
Postitused: 8857

Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 09.01.2007, 21:57  postituse pealkiri:  spott õpib bash skripti looma :)  

Õppin siin vaikselt Bashi skriptimist ja tekkis üks küsimus - mis käsuga ma saan olemasolevasse faili lisada uue rea.
Ehk olemas on fail kaka.conf ja sinna tahan lisada rea junn=true

St asi peab toimima automaatselt, cat-i kasutada ei taha, sest see tahab kindlasti teisest failist seda infot võtta.

_________________
Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu



Viimati muutis spott 11.01.2007, 22:58; muudetud 1 kord
indrek56
Pingviini aktivist
Pingviini aktivist


Vanus: 51
Liitunud: 30.08.2006
Postitused: 282
Asukoht: Tartu
Distributsioon: opensuse
estonia.gif
postituspostitatud: 09.01.2007, 22:02  postituse pealkiri:  Re: Bashi käskude kohta küsimusi  

spott kirjutas:
Ehk olemas on fail kaka.conf ja sinna tahan lisada rea junn=true

echo junn=true >> kaka.conf?


spott
Admin
Admin


Vanus: 43
Liitunud: 04.06.2005
Postitused: 8857

Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 09.01.2007, 22:38  postituse pealkiri:  (teema puudub)  

ei toimi.
echo on ju info kuvamiseks

_________________
Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu

indrek56
Pingviini aktivist
Pingviini aktivist


Vanus: 51
Liitunud: 30.08.2006
Postitused: 282
Asukoht: Tartu
Distributsioon: opensuse
estonia.gif
postituspostitatud: 09.01.2007, 22:42  postituse pealkiri:  (teema puudub)  

spott kirjutas:
ei toimi.
echo on ju info kuvamiseks

">>" abil suunatakse "echo"-ga kuvatav hoopis etteantud faili (lõppu), ekraanil ei kuvatagi.
proovisid ikka?


johnsmith
Vana Pingviin
Vana Pingviin


Vanus: 50
Liitunud: 24.07.2006
Postitused: 714
Asukoht: Universum
Distributsioon: Ubuntu/Gentoo/FreeBSD
finland.gif
postituspostitatud: 09.01.2007, 22:43  postituse pealkiri:  (teema puudub)  

Sed oleks vist kõige õigem selliseks tööks.
Võimaldab muuta ridasid, lisada ridasid teatud kohta failis jne.
Äkki on vaja muuta junn=false junn=trueks, Indrek56 meetod lisab junn=true faili lõppu aga junn=false jääb ikka kuhugi faili keskele.

_________________
"Thinking is the hardest work there is, which is probably the reason why so few engage in it" - Henry Ford

indrek56
Pingviini aktivist
Pingviini aktivist


Vanus: 51
Liitunud: 30.08.2006
Postitused: 282
Asukoht: Tartu
Distributsioon: opensuse
estonia.gif
postituspostitatud: 09.01.2007, 22:45  postituse pealkiri:  (teema puudub)  

johnsmith kirjutas:
Indrek56 meetod lisab junn=true faili lõppu aga junn=false jääb ikka kuhugi faili keskele.

seda ei küsitudki, seega JOKK Wink
ette oli arvatagi et echo lõpplahendust ei paku. aga ma ei tea ka mis seal lõpuks tulema peab...
siiski-siiski, kui junn=true või junn=false on ainukesed asjad mis seal kaka.konfis sialduma hakkab, siis saab echoga ära toimetada.




Viimati muutis indrek56 09.01.2007, 22:47; muudetud 1 kord
spott
Admin
Admin


Vanus: 43
Liitunud: 04.06.2005
Postitused: 8857

Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 09.01.2007, 22:47  postituse pealkiri:  (teema puudub)  

indrek56 kirjutas:
spott kirjutas:
ei toimi.
echo on ju info kuvamiseks

">>" abil suunatakse "echo"-ga kuvatav hoopis etteantud faili (lõppu), ekraanil ei kuvatagi.
proovisid ikka?

loomulikult proovisin

tegelikult jah sinu meetod toimib. Kuid kuna mul jälle pikki rida vaja conf faili lisada, siis seal vahel ka tühik. Sellepärast minu testis ainult kuvas seda rida. Aitas ülakomade vahele panek. Uurin seda sed-i värki ka.

_________________
Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu

johnsmith
Vana Pingviin
Vana Pingviin


Vanus: 50
Liitunud: 24.07.2006
Postitused: 714
Asukoht: Universum
Distributsioon: Ubuntu/Gentoo/FreeBSD
finland.gif
postituspostitatud: 09.01.2007, 22:55  postituse pealkiri:  (teema puudub)  

Vabandust Indrek56, ma ei tulnud lihtsalt selle peale, et Spotti confi failis hakkab olema ainult junn=true Smile

_________________
"Thinking is the hardest work there is, which is probably the reason why so few engage in it" - Henry Ford

spott
Admin
Admin


Vanus: 43
Liitunud: 04.06.2005
Postitused: 8857

Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 09.01.2007, 23:03  postituse pealkiri:  (teema puudub)  

ega ma aladust ei tee - tuli mõte teha väike bash skript Ubun tule. mis paigaldaks kõik vajaminevad paketid id kaardile ja muudaks vajaminevalt conf faili.

_________________
Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu

johnsmith
Vana Pingviin
Vana Pingviin


Vanus: 50
Liitunud: 24.07.2006
Postitused: 714
Asukoht: Universum
Distributsioon: Ubuntu/Gentoo/FreeBSD
finland.gif
postituspostitatud: 09.01.2007, 23:19  postituse pealkiri:  (teema puudub)  

sed s/junn=false/junn=true/ kaka.conf

Muudab junn=false junn=true ükskõik kuskohas ta ka seal failis poleks

EDIT: Proovisin seda ja tuleb välja, et sed ei muuda faili vaid echo -b selle muutuse standard output -i.
Saab küll muuta faili aga läbi järgmise triki, mul praegu targemat pähe ei tulnud
Kood:

sed s/junn=false/junn=true/ proov.txt > ajutine.txt ; cp ajutine.txt proov.txt

Proovisin ka lisada sõna järgmine junn=true järgi
Kood:

sed /junn=true/a\ järgmine  proov.txt > ajutine.txt ; cp ajutine.txt proov.txt


kõike saab teha aga millegipärast ei saa otse faili muuta.
Või saab ?

_________________
"Thinking is the hardest work there is, which is probably the reason why so few engage in it" - Henry Ford

margo704
Pingviini aktivist
Pingviini aktivist



Liitunud: 30.08.2005
Postitused: 242

Distributsioon: Linux Mint 20.1
blank.gif
postituspostitatud: 10.01.2007, 02:42  postituse pealkiri:  (teema puudub)  

Otse faili muuta saab, kui lisada -i
Sedasi siis:
Kood:
sed -i 's/junn=false/junn=true/' kaka.conf

See asendab ainult esimese "junn=false"-i. Kui tahad, et kõik failis leiduvad "junn=false"-id asendataks, siis:
Kood:
sed -i 's/junn=false/junn=true/g' kaka.conf


johnsmith
Vana Pingviin
Vana Pingviin


Vanus: 50
Liitunud: 24.07.2006
Postitused: 714
Asukoht: Universum
Distributsioon: Ubuntu/Gentoo/FreeBSD
finland.gif
postituspostitatud: 10.01.2007, 12:56  postituse pealkiri:  (teema puudub)  

Sed on selline vaese mehe perl Smile

Peab hakkama seda kasutama, saab käigu pealt shellist confi faile muuta ei pea vi -d lahti tegemagi. Ma arvan, et võib julgelt ka teatud distrost sõltumatult kasutusel olevates skriptides kasutada sed on igal pool vaikimisi olemas.

_________________
"Thinking is the hardest work there is, which is probably the reason why so few engage in it" - Henry Ford

indrek56
Pingviini aktivist
Pingviini aktivist


Vanus: 51
Liitunud: 30.08.2006
Postitused: 282
Asukoht: Tartu
Distributsioon: opensuse
estonia.gif
postituspostitatud: 10.01.2007, 14:15  postituse pealkiri:  (teema puudub)  

suur tänu johnsmith igatahes, väga kasulik teada...


commodore

Vana Pingviin
Vana Pingviin


Vanus: 37
Liitunud: 02.10.2005
Postitused: 745


blank.gif
postituspostitatud: 10.01.2007, 20:58  postituse pealkiri:  (teema puudub)  

kustutatud




Viimati muutis commodore 16.08.2015, 13:45; muudetud 1 kord
johnsmith
Vana Pingviin
Vana Pingviin


Vanus: 50
Liitunud: 24.07.2006
Postitused: 714
Asukoht: Universum
Distributsioon: Ubuntu/Gentoo/FreeBSD
finland.gif
postituspostitatud: 10.01.2007, 22:19  postituse pealkiri:  (teema puudub)  

commodore kirjutas:
Tühikute kohta, et mõndades keeltes peab neid escape'ima. Ma ei ole ise bashis midagi teinud, nii et ei tea kuidas seal lood on, aga äkki aitab, kui ennem tühikut kirjutada '\' näiteks 'palju\ lapsi'.


Ühekordsete jutumärkide sees ei pea tühikut escapima.
Näiteks kui teha pika nimega directory millel on tühikud vahel:
mkdir pika nimega kaust - teeb kolm kausta 1. pika 2. nimega 3. kaust.

On kaks võimalust teha sellist directory:

1. mkdir pika\ nimega\ kaust
2. mkdir 'pika nimega kaust'

_________________
"Thinking is the hardest work there is, which is probably the reason why so few engage in it" - Henry Ford

laurivosandi
Moderaator
Moderaator


Vanus: 36
Liitunud: 08.07.2005
Postitused: 647
Asukoht: Tallinn
Distributsioon: Estobuntu, Debian
estonia.gif
postituspostitatud: 11.01.2007, 11:09  postituse pealkiri:  (teema puudub)  

Palun lugege standardsisenditest ning -väljunditest:
http://en.wikipedia.org/wiki/Standard_streams

Niisama katsetades läheb kaua aega enne kui aru saad


spott
Admin
Admin


Vanus: 43
Liitunud: 04.06.2005
Postitused: 8857

Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 11.01.2007, 16:08  postituse pealkiri:  (teema puudub)  

sid-iga saan arvatavasti oma asja aetud. Nüüd olen jõudnud järjega zenity katsetamiseni, et ka graafilised dialoogid luua.

Ühtlasi - kas keegi oskab öelda, kas erinevate sertifikaatide paigaldamine Firefoxis ja Mozillas on ka võimalikud otse käsurealt?

Lisaks - saab keegi näite tuua, kuidas kasutada zenity --question funktsiooni, et kui valiti cancel, siis läheks exit ja kui Ok, siis läheks edasi järgmise bashi käsu juurde.

_________________
Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu

laurivosandi
Moderaator
Moderaator


Vanus: 36
Liitunud: 08.07.2005
Postitused: 647
Asukoht: Tallinn
Distributsioon: Estobuntu, Debian
estonia.gif
postituspostitatud: 11.01.2007, 18:22  postituse pealkiri:  (teema puudub)  

nagu manpage seletab: s, and return (either in the return code, or on standard output) the users input.

return code liigub muutujasse $? peale progammi käivitamist. Ehk siis katsetamisel:
Kood:
zenity --question
echo $?


spott
Admin
Admin


Vanus: 43
Liitunud: 04.06.2005
Postitused: 8857

Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 11.01.2007, 18:41  postituse pealkiri:  (teema puudub)  

ei saa aru. Minu leiutis hetkel:
zenity --question
zenity --info\
--text="Minu tekst on siin"
gksudo apt-get update

ja vahet pole, kas valin Loobu või OK esimesel küsimusel. Ikka läheb edasi...

_________________
Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu

laurivosandi
Moderaator
Moderaator


Vanus: 36
Liitunud: 08.07.2005
Postitused: 647
Asukoht: Tallinn
Distributsioon: Estobuntu, Debian
estonia.gif
postituspostitatud: 11.01.2007, 18:55  postituse pealkiri:  (teema puudub)  

oeh spott, programmeerida sa ei oska ikka. Selline shelli skript tuli:
Kood:

#!/bin/sh
zenity --question --text="Kas uuendan süsteemi?"
if [ "$?" -eq "0" ]; then
  zenity --info --text="Käivitan süsteemi uuendamise."
  gksudo apt-get update
else
  zenity --info --text="Sa katkestasid süsteemi uuendamise".
fi


Näita (aja järgi):      
Postita uus teemaVasta teemale


Vaata järgmist teemat
Vaata eelmist teemat
Powered by phpBB2 Plus based on phpBB © 2001/7 phpBB Group