Expect: Difference between revisions
Line 23: | Line 23: | ||
Eelneva puhul saadetakse string ''tere maailm''. Kui expect juba suhtleb mõne programmiga siis saadetakse string sellele programmile. Hetkel saadetakse see aga standard väljundisse. Kasutades expect interpretaatorit, näeks tulemus välja selline: | Eelneva puhul saadetakse string ''tere maailm''. Kui expect juba suhtleb mõne programmiga siis saadetakse string sellele programmile. Hetkel saadetakse see aga standard väljundisse. Kasutades expect interpretaatorit, näeks tulemus välja selline: | ||
<pre>expect | <pre>expect | ||
expect1.1 | expect1.1>send "tere maailm" | ||
tere maailmexpect1.2> | tere maailmexpect1.2></pre> | ||
=Koostab= | =Koostab= | ||
Meelis Kurnikov AK21 | Meelis Kurnikov AK21 | ||
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]] | [[Category: Operatsioonisüsteemide administreerimine ja sidumine]] |
Revision as of 15:47, 4 December 2011
Koostamisel...
Sissejuhatus
Expect on Don Libes'i poolt kirjutatud Tcl (Tool Command Language) laiendus, mida kasutatakse erinevate käsurea tegevuste automatiseerimiseks. Põhiliselt kasutatakse expect'i käsurealt kasutatavate inetaktiivsete rakenduste (ssh, telnet, ftp, sudo jne) automatiseerimiseks. Expect on asendamatu abimees neile, kes tahavad automatiseerida näiteks paroolide muutmist, võrguseadmete haldamist vms tegevust, mis nõuab kasutaja-terminali vahelist suhtlust. Piltlikult võib öelda, et kasutades etteantud skripti expect "räägib" teiste interaktiivsete programmidaga. Järgides skripti expect teab mida programmilt oodata ja mida programmile erinevates olukordades "öelda".
Üldine
Expecti põhiliseks alustalaks on kolm käsku: expect, send ja spawn. Samuti on tihti suureks abiks käsk interact. Expect ootab teatud andmeid protsessilt. Send käsk saadab andmed protsessile. Spawn alustab protsessi. Interact annab juhtimise üle kasutajale.
Järgneva artikli paremaks mõistmiseks peaks olema eelnevalt tutvunud Linuxi käsureaga.
Send
Send käsk loeb etteantud stringi kui argumenti ja saadab selle protsessile. Näiteks:
send "tere maailm"
Eelneva puhul saadetakse string tere maailm. Kui expect juba suhtleb mõne programmiga siis saadetakse string sellele programmile. Hetkel saadetakse see aga standard väljundisse. Kasutades expect interpretaatorit, näeks tulemus välja selline:
expect expect1.1>send "tere maailm" tere maailmexpect1.2>
Koostab
Meelis Kurnikov AK21