EngelsFransSpaans

Ad


OnWorks-favicon

autoexpect - Online in de cloud

Voer autoexpect uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht autoexpect die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


autoexpect - genereer een Expect-script van het bekijken van een sessie

KORTE INHOUD


automatisch verwachten [ betoogt ] [ programma argumenten... ]

INLEIDING


autoexpect kijkt naar je interactie met een ander programma en maakt een Expect-script aan dat
reproduceert uw interacties. Voor lineaire scripts bespaart autoexpect veel tijd
over het met de hand schrijven van scripts. Zelfs als je een Expect-expert bent, zul je het vinden
handig om autoexpect te gebruiken om de meer hersenloze delen van interacties te automatiseren. Het is
veel gemakkelijker om stukjes autoexpect-scripts samen te knippen/plakken dan om ze uit te schrijven
kras. En als je een beginner bent, kun je misschien wegkomen door niets te leren
meer over Expect dan hoe je autoexpect aanroept.

De eenvoudigste manier om autoexpect te gebruiken, is door het vanaf de opdrachtregel aan te roepen zonder argumenten.
Bijvoorbeeld:

% automatisch verwachten

Standaard spawnt autoexpect een shell voor je. Gegeven een programmanaam en argumenten,
autoexpect spawnt dat programma. Bijvoorbeeld:

% autoexpect ftp ftp.cme.nist.gov

Als je voortgebrachte programma eenmaal draait, communiceer dan normaal. Wanneer je de schelp hebt verlaten
(of een programma dat u hebt opgegeven), zal autoexpect een nieuw script voor u maken. Standaard,
autoexpect schrijft het nieuwe script naar "script.exp". U kunt dit overschrijven met de vlag -f
gevolgd door een nieuwe scriptnaam.

Het volgende voorbeeld voert "ftp ftp.cme.nist.gov" uit en slaat het resulterende Expect-script op
in het bestand "nist".

% autoexpect -f nist ftp ftp.cme.nist.gov

Het is belangrijk om te begrijpen dat autoexpect geen garantie biedt voor een werkend script omdat
het moet noodzakelijkerwijs naar bepaalde dingen raden - en af ​​en toe raadt het verkeerd.
Het is echter meestal heel eenvoudig om deze problemen te identificeren en op te lossen. De typische problemen
zijn:

· Timing. Een verrassend groot aantal programma's (rn, ksh, zsh, telnet, etc.)
en apparaten (bijv. modems) negeren toetsaanslagen die daarna "te snel" aankomen
aanwijzingen. Als je merkt dat je nieuwe script ergens blijft hangen, probeer dan een
korte slaap vlak voor de vorige verzending.

U kunt dit gedrag overal afdwingen door de variabele te overschrijven
"force_conservative" aan het begin van het gegenereerde script. Dit
"conservatieve" modus zorgt ervoor dat autoexpect automatisch kort pauzeert (een tiende van
een seconde) voordat u elk teken verzendt. Dit kalmeert elk programma dat ik ken
van.

Deze conservatieve modus is handig als je jezelf even snel gerust wilt stellen
dat het een timingprobleem is (of als het je echt niets kan schelen hoe snel
het script wordt uitgevoerd). Deze zelfde modus kan worden geforceerd voordat het script wordt gegenereerd door
met behulp van de vlag -c.

Gelukkig zijn deze timingspots zeldzaam. Telnet negeert bijvoorbeeld
karakters pas na het invoeren van de escape-reeks. Modems negeren alleen
karakters onmiddellijk nadat u er voor het eerst verbinding mee hebt gemaakt. Een paar
programma's vertonen dit gedrag de hele tijd, maar schakelen meestal over naar
schakel het uit. De vlag -T van rn schakelt dit gedrag bijvoorbeeld uit.

Het volgende voorbeeld start autoexpect in conservatieve modus.

automatisch verwachten -c

De vlag -C definieert een sleutel om de conservatieve modus in te schakelen. Het volgende voorbeeld
start autoexpect (in niet-conservatieve modus) met ^L als schakelaar. (Let daar op
de ^L wordt letterlijk ingevoerd - dwz voer een echte controle-L in).

automatisch verwachten -C ^L

Het volgende voorbeeld start autoexpect in conservatieve modus met ^L als de
schakelen.

autoexpect -c -C ^L

· Echoën. Veel programmeer echo-tekens. Als u bijvoorbeeld "meer" typt voor een
shell, wat autoexpect eigenlijk ziet is:

je hebt 'm' getypt,
computer typte 'm',
je typte 'o',
computer typte 'o',
je hebt 'r' getypt,
computer getypt 'r',
...

Zonder specifieke kennis van het programma is het onmogelijk om te weten of u dat bent
wachtend om elk teken te zien echoën voordat je het volgende typt. Als automatisch verwachten
ziet dat karakters worden herhaald, gaat het ervan uit dat het ze allemaal als een groep kan verzenden
in plaats van ze te verweven zoals ze oorspronkelijk verschenen. Dit maakt de
script prettiger om te lezen. Het zou echter mogelijk onjuist zijn als
je moest echt wachten om elk personage te zien echoën.

· Wijziging. Autoexpect neemt elk karakter van de interactie op in het script.
Dit is wenselijk omdat het u de mogelijkheid geeft om er een oordeel over te vellen
wat belangrijk is en wat kan worden vervangen door een patroonovereenkomst.

Aan de andere kant, als u opdrachten gebruikt waarvan de uitvoer verschilt van run tot run,
de gegenereerde scripts zullen niet correct zijn. Bijvoorbeeld de "datum"
opdracht produceert altijd verschillende uitvoer. Dus met behulp van het datumcommando while
het uitvoeren van autoexpect is een zekere manier om een ​​script te produceren dat moet worden bewerkt
om het te laten werken.

De -p vlag zet autoexpect in "prompt mode". In deze modus zal automatisch verwachten
zoek alleen naar de laatste regel van de programma-uitvoer - meestal de
snel. Dit behandelt het datumprobleem (zie hierboven) en de meeste andere.

In het volgende voorbeeld wordt autoexpect gestart in promptmodus.

automatisch verwachten -p

De vlag -P definieert een sleutel om de promptmodus in te schakelen. Het volgende voorbeeld begint
autoexpect (in niet-promptmodus) met ^P als schakelaar. Merk op dat de ^P is
letterlijk ingevoerd - dwz voer een echte controle-P in.

automatisch verwachten -P ^P

Het volgende voorbeeld start autoexpect in promptmodus met ^P als schakelaar.

autoexpect -p -P ^P

ANDERE VLAGGEN


De -rustig vlag schakelt informatieve berichten geproduceerd door autoexpect uit.

De -Q vlag noemt een aanhalingsteken dat kan worden gebruikt om tekens in te voeren die automatisch worden verwacht
anders zou verbruiken omdat ze worden gebruikt als schakelaars.

Het volgende voorbeeld toont een aantal vlaggen met aanhalingstekens die worden gebruikt om een ​​manier van invoeren te bieden
de schakelaars letterlijk.

automatisch verwachten -P ^P -C ^L -Q ^Q

STIJL


Ik weet niet of er een "stijl" is voor Expect-programma's, maar autoexpect zou dat zeker moeten doen
niet worden opgehouden als een model van stijl. Autoexpect gebruikt bijvoorbeeld functies van Expect
die specifiek bedoeld zijn voor computergegenereerde scripting. Dus probeer het niet
schrijf getrouw scripts die eruitzien alsof ze zijn gegenereerd door autoexpect. Dit is niet
nuttig.

Aan de andere kant laten autoexpect-scripts wel enkele dingen zien die de moeite waard zijn. Bijvoorbeeld jij
kan zien hoe elke string tussen aanhalingstekens moet staan ​​om hem in een Tcl-script te kunnen gebruiken, gewoon door hem uit te voeren
de strings via autoexpect.

Gebruik autoexpect online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

  • 1
    Avogadro
    Avogadro
    Avogadro is een geavanceerde moleculaire
    editor ontworpen voor platformonafhankelijk gebruik
    in computationele chemie, moleculair
    modellering, bio-informatica, materialen
    wetenschap en ...
    Avogadro downloaden
  • 2
    XMLTV
    XMLTV
    XMLTV is een reeks programma's om te verwerken
    TV (tvguide) lijsten en hulp bij het beheren
    uw tv-kijken, aanbiedingen opslaan in een
    XML-gebaseerd formaat. Er zijn hulpprogramma's om
    Doen...
    XmlTV downloaden
  • 3
    slag
    slag
    Strikr Vrije Software-project. Artefacten
    vrijgegeven onder een 'intent based'
    dubbele licentie: AGPLv3 (community) en
    CC-BY-NC-ND 4.0 internationaal
    (reclame)...
    Strikr downloaden
  • 5
    GIFLIB
    GIFLIB
    giflib is een bibliotheek voor lezen en
    gif-afbeeldingen schrijven. Het is API en ABI
    compatibel met libungif die erin zat
    breed gebruik terwijl de LZW-compressie
    algoritme was...
    GIFLIB downloaden
  • 6
    Alt-F
    Alt-F
    Alt-F biedt een gratis en open source
    alternatieve firmware voor de DLINK
    DNS-320/320L/321/323/325/327L and
    DNR-322L. Alt-F heeft Samba en NFS;
    ondersteunt ext2/3/4...
    Alt-F downloaden
  • Meer "

Linux-commando's

  • 1
    2ping6
    2ping6
    2ping - Een bidirectioneel ping-hulpprogramma ...
    Voer 2ping6 uit
  • 2
    2tot3-2.7
    2tot3-2.7
    2to3-2.7 - Python2 naar Python3 converter
    ...
    Voer 2to3-2.7 uit
  • 3
    cpqarrayd
    cpqarrayd
    cpqarrayd - Arraycontroller
    monitoringdaemon SYNTAXIS: cpqarrayd [-d]
    [-v] [-t host [-t host]] BESCHRIJVING:
    Dit programma kan HP monitoren
    (Compaq) arr...
    Voer cpqarrayd uit
  • 4
    cproto
    cproto
    cproto - genereer prototypen van C-functies
    en converteer functiedefinities ...
    Voer cproto uit
  • 5
    gapi2-fixup
    gapi2-fixup
    ongedocumenteerd - Geen manpage hiervoor
    programma. BESCHRIJVING: Dit programma doet
    geen manpage hebben. Voer deze opdracht uit
    met de hulpschakelaar om te zien wat het is
    doet. Voor v...
    Voer gapi2-fixup uit
  • 6
    gapi2-parser
    gapi2-parser
    ongedocumenteerd - Geen manpage hiervoor
    programma. BESCHRIJVING: Dit programma doet
    geen manpage hebben. Voer deze opdracht uit
    met de hulpschakelaar om te zien wat het is
    doet. Voor v...
    Voer gapi2-parser uit
  • Meer "

Ad