EngelsFransSpaans

Ad


OnWorks-favicon

comgt - Online in de cloud

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

Dit is de opdracht comgt 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


comgt - Optie GlobeTrotter GPRS/EDGE/3G/HSDPA en Vodafone 3G/GPRS datakaartbediening
tools

KORTE INHOUD


comgt -d apparaat -ehstvVx script

OPTIES


-d apparaat
stel het apparaat in dat moet worden gebruikt om met de datakaart te communiceren. Als niet
gespecificeerd en vervolgens comgt trys /dev/noz2, /dev/ttyUSB2 en /dev/modem

-e
schakel de echo van seriële communicatie in.

-h
samenvattingshulp weergeven en afsluiten.

-s
voer de interne niet uit verzuim script vóór een extern script.

-t
verander naar een alternatieve lijnafsluiting (standaard "0).

-v
uitvoeren in uitgebreide modus. Hiermee worden scripts getraceerd terwijl ze worden uitgevoerd. Het is
bedoeld om te helpen bij het debuggen van scripts.

-V
Informatie over de afdrukversie.

-x
voor interne en externe scripts is elke verwijzing naar 115200 baud
geconverteerd naar 57600. Dit is handig voor datakaarten die 115200 niet leuk vinden
baud zoals de GlobeTrotter EDGE.

PRODUCTBESCHRIJVING


comgt is een tolk in scripttaal die nuttig is voor het tot stand brengen van communicatie via seriële bestanden
lijnen en via PCMCIA-modems, evenals GPRS- en 3G-datakaarten.

comgt heeft een aantal functies die zelden voorkomen in andere hulpprogramma's van hetzelfde type.

Voordelen
- Vooraf gedefinieerde ingebouwde scripts voor 2G/3G-datakaartcontrole
- Eenvoudige, BASIC-achtige scripttaal.
- Opdrachtregel- en bestandsbron van script.
- Wachten op meerdere reacties.
- waitquiet maakt lijnstabilisatie mogelijk.
- In-line tekstopname.
- Ondersteuning voor meerdere processen: vork, wacht, dood, uitgang.
- Foutopsporing in uitgebreide en loguitvoer.
- loggen naar bestand.
- Stroomcontrole: goto, gosub, return, if, else.
- Lage impact op systeembronnen.
- Tijdopdrachten en functies.
- Snaarmanipulaties.
- Omgevingsmanipulatie: env(), putenv.
- Externe hulpprogramma's systeemoproepen: systeem, exec.

ondersteunde GPRS en 3G datakaarten
comgt is getest tegen GlobeTrotter GPRS, EDGE, Combo EDGE, 3G, 3G EDGE, HSDPA en
GlobeTrotter Fusion en Vodafone 3G. Het kan de pincode instellen en informatie weergeven
over datakaarten voordat een PPP-verbinding wordt gestart. Bovendien, omdat de
GlobeTrotter en Vodafone 3G/GPRS-datakaart hebben een secundaire seriële interface
datakaarten kunnen worden gemonitord terwijl er een PPP-verbinding bestaat en gegevens worden overgedragen.

comgt is in de eerste plaats ontworpen om te werken met de GlobeTrotter-reeks datakaarten, maar dat zou ook zo moeten zijn
compatibel met elke andere GPRS- of 3G-datakaart, op voorwaarde dat de interface als één geheel is geïmplementeerd
of meer seriële of USB-seriële apparaten en wordt bestuurd en opgevraagd door een implementatie
van de Hayes-opdrachtinterface met dezelfde AT-opdrachtextensies die door de genoemde worden gebruikt
datakaarten.

gebruik comgt
comgt heeft maar één functie: een script uitvoeren. Dit kan een van een aantal ‘standaard’
interne scripts of een extern script. Beide typen scripts worden op dezelfde manier aangeroepen.
De "standaard" scripts zijn ingebouwd comgt en werkt voor serieel aangesloten modems,
ingebouwde modems, PCMCIA-modems evenals de GlobeTrotter GPRS en de Vodafone 3G/GPRS
datakaarten. Er is een zoekprioriteitvolgorde voor scripts: 1) intern, 2) werkend
map, 3)/etc/comgt

Ingebouwd scripts
comgt
Hiermee wordt het standaard interne script uitgevoerd. Rennen comgt zonder dat er een script is opgegeven, bijvoorbeeld
comgt -d /dev/ttyS1 Er wordt gecontroleerd of er een pincode is en u wordt gevraagd of deze nodig is. De volgende
wat het doet is wachten tot het apparaat zich registreert, waarna het de signaalsterkte rapporteert. Als
u specificeert geen poort met de -d optie dan /dev/modem wordt verondersteld. Als de -s schakelaar
niet wordt gebruikt, wordt dit standaardscript vóór elk extern script uitgevoerd.

comgt hulp
Geeft een overzicht van deze en andere beschikbare opties.

comgt info
Geeft de datakaartconfiguratie weer.

comgt sig
Drukt de signaalsterkte af.

comgt reg
Drukt de registratiestatus af.

comgt 3G
Zet een GlobeTrotter 3G/Fusion en Vodafone 3G in de 3G-netwerkmodus (UMTS/HSDPA).

comgt 2G
Zet een GlobeTrotter 3G/Fusion en Vodafone 3G in de 2G-netwerkmodus (GSM/GPRS/EDGE).

comgt 3G2G
Zet een GlobeTrotter 3G/Fusion en Vodafone 3G in de 3G-voorkeursmodus (UMTS/HSDPA en
GSM/GPRS/EDGE).

comgt GTEDGE
Gebruik deze opdracht om GlobeTrotter EDGE- en GlobeTrotter Combo EDGE-kaarten eerder te initialiseren
iets anders doen. (Hij schakelt de radio in).

comgt USA
Schakel over naar de 900/1900 MHz-band voor gebruik in de VS. Alleen GlobeTrotter GPRS-datakaarten.

comgt EUROPA
Schakel over naar de 900/1800 MHz-band voor Europees gebruik. Alleen GlobeTrotter GPRS-datakaarten.

comgt PIN
Test de SIM-pincodestatus en gebruik de omgevingsvariabele COMGTPIN als waarde.

comgt APN
Stel de APN van de datakaart in op de waarde in de omgevingsvariabele COMGTAPN.

Eigen Scripts
Naast ingebouwde scripts kunt u ook uw eigen scripts maken. Het volgende script stelt een Vodafone 3G in
datakaart of Option Fusion-kaart UMTS-modus naar GPRS:

#Stel de modus Alleen GPRS in
stel com 115200n81 in
stel de verzendvertraging in op 0.05
wachtstil 1 0.2
stuur "AT_OPSYS=0^m"
print "Alleen GPRS-modus instellen"

Als u het bovenstaande script als GPRS zou opslaan, zou u het zo noemen:

comgt GPRS

Als u ook de poort moet opgeven, doet u dit:

comgt -d /dev/ttyS1 GPRS

U kunt ook omgevingsparameters doorgeven aan a comgt schrift via $env().

Het vervangen de chat
de chat is een hulpprogramma dat wordt meegeleverd met het ppp-pakket (in ieder geval voor Linux) dat, met een set van
verwachten-send string-koppels, doet genoeg om de meeste mensen met ISP's en dergelijke te verbinden. Terwijl
Het gebruik van chat is heel eenvoudig, het is niet erg flexibel. Dat is waar comgt neemt het over.

comgt kan worden gebruikt in plaats van de chat dezelfde strategie gebruiken. Bijvoorbeeld een pppd-regel
lezing:

pppd connect \
´chat -v "" ATDT5551212 VERBINDEN "" ogin: ppp \
woord: wildwater´ \
/dev/cua1 38400 debug crtscts modem standaardroute

Zou, gebruiken comgt, lezen:

pppd connect ´comgt -s /root/scripts/isp.scr´ /dev/cua1 38400 \
debug crtscts modem standaardroute

En het isp.scr-script zou luiden:

stuur "ATDT5551212^m"
wacht op 60 "ogin:"
stuur "ppp^m"
wacht op 60 "woord:"
stuur "wildwater^m"

Natuurlijk wordt het dan triviaal om dit script een stuk functioneler te maken door
code toevoegen voor bezetdetectie, opnieuw bellen, enz...

breedsprakig uitgang
Wanneer de uitgebreide optie is ingeschakeld, comgt rapporteert alles over de standaardfout
kanaal. Indien ingeschakeld vanaf de opdrachtregel (-v), bevat de uitvoer 4 secties.

- Opdrachtregelargumentacties
Dit zijn acties die worden uitgevoerd omdat ze zijn opgegeven vanaf de opdrachtregel, zoals
het openen van een communicatieapparaat (-d), enz... Om deze uit te voeren, moet u -v opgeven
als eerste argument.

- Lijst met argumenten
Het aantal en de lijst met doorgegeven argumenten. Dit is handig als je er een heleboel hebt
omgevingsvariabelen of aanhalingstekens, back-quotes, backslashes op de opdrachtregel en je bent
Ik weet niet zeker wat het script echt ziet.

- Scriptlijst
Een lijst met het script dat moet worden uitgevoerd. Dit kan een aaneenschakeling zijn van de standaard interne waarde
script, tenzij dit wordt onderdrukt door de optie -s, en een scriptbestand. Elke lijn is
vermeld met het regelnummer en de tekenpositie.

- Uitvoeringsoutput
Lijst met opdrachten terwijl ze worden uitgevoerd. De parser drukt de regel af waarop deze zich momenteel bevindt,
beginnend vanaf het exacte punt waar het zich bevindt tot het einde van de lijn. Meerdere commando's
groepen op een enkele lijn produceren meerdere uitvoerlijnen. Uitgebreide uitvoer kan worden gemengd met
scriptuitvoer (print, eprint of lprint.)

Hier is een voorbeeld:

$ comgt -v -d/dev/cua1 -s blah.scr
comgt 00:18:46 -> Uitgebreide uitvoer ingeschakeld
comgt 00:18:46 -> Scriptbestand: blah.scr
comgt 00:18:46 -> argc:5
comgt 00:18:46 -> argv[0]=comgt
comgt 00:18:46 -> argv[1]=-v
comgt 00:18:46 -> argv[2]=-d/dev/cua1
comgt 00:18:46 -> argv[3]=-s
comgt 00:18:46 -> argv[4]=blah.scr
comgt 00:18:46 -> ---Script---
1@0000 stel com 38400n81 laat a=2
2@0025 druk "9x",a,"=",9*a,"\n" af
3@0051 slaap 5
4@0059 uitgang 0
comgt 00:18:46 -> ---Einde van script---
comgt 00:18:46 -> @0000 set com 38400n81 laat a=2
comgt 00:18:46 -> @0017 laat a=2
comgt 00:18:46 -> @0025 print "9x",a,"=",9*a,"\n"
9x2 = 18
comgt 00:18:46 -> @0051 slaap 5
comgt 00:18:51 -> @0059 uitgang 0

Programming handboek


Syntaxis
De syntaxis die wordt gebruikt voor comgt scripts is vrij eenvoudig, enigszins BASIC-achtig. Een script is een
niet-getokeniseerd, puur ASCII-tekstbestand met regels die worden afgesloten met nieuweregeltekens
(Unix-standaard.) Scripts kunnen worden gemaakt en/of gewijzigd met behulp van elke standaard teksteditor
(vi, vim, joe, pico, emacs, ed, microEmacs) Lijnen in a comgt script leest als volgt:

- Lege regel
- [streepje]rem opmerking
- [inspringen][[:|label] LABEL] [opdracht [argumenten]] rem opmerking
- [inspringen][[:|label] LABEL] [opdracht [argumenten]] [opdracht [argumenten]]...

Tekens die voor inspringing worden gebruikt, zijn de spatie- en tabeltekens.
Het rem-commando zorgt ervoor dat de scriptparser de rest van de regel overslaat.
Het rem-commando kan ook worden geschreven als "#" of "//".

Labels bestaan ​​uit kleine letters, hoofdletters en cijfers.
Hoofdlettergebruik wordt genegeerd in labels.

Commando's en hun argumenten worden gescheiden door spaties en/of tabs.
Commandogroepen worden gescheiden door spaties, tabs of nieuwe regels.

Expressies mogen geen spaties of tabs bevatten.
Dit is oké: laat n=x+76
Dit is niet: laat n= x + 76
Omdat deze spatie ^ de opdrachtgroep let zou beëindigen.

Fout rapportage
. comgt detecteert een scriptfout, schakelt onmiddellijk de uitgebreide modus in en genereert een dump
(zie het dump-commando), rapporteert de fout in drie regels en stopt de uitvoering. De
de eerste gerapporteerde regel is de commandogroep die wordt uitgevoerd, de tweede laat zien waar de
parser kreeg en de derde regel rapporteert de karakterpositie van de programmateller, de
fout en de exitcode.

Hier is een voorbeeld:

$ comgt -vs blar2.scr

Waar het blar2.scr-script is:

incl. n
december d3
laat a = 58/3
laat $d="fod"
laat c = 1/0
laat $y4="sdfgsdfgsdfg"

Het traceer- en foutrapport ziet er als volgt uit:

comgt 11:20:15 -> Uitgebreide uitvoer ingeschakeld
comgt 11:20:15 -> Scriptbestand: blar2.scr
comgt 11:20:15 -> argc:3
comgt 11:20:15 -> argv[0]=comgt
comgt 11:20:15 -> argv[1]=-vs
comgt 11:20:15 -> argv[2]=blar2.scr
comgt 11:20:15 -> ---Script---
1@0000 inc
2@0007 dec d3
3@0015 en a=58/3
4@0027 let $d="fod"
5@0041 laat c=1/0
6@0052 let $y4="sdfgsdfgsdfg"
comgt 11:20:15 -> ---Einde van script---
comgt 11:20:15 -> @0000 inc n
comgt 11:20:15 -> @0007 dec d3
comgt 11:20:15 -> @0015 laat a=58/3
comgt 11:20:15 -> @0027 let $d="fod"
comgt 11:20:15 -> @0041 laat c=1/0
comgt 11:20:15 -> -- Foutrapport --
comgt 11:20:15 -> ----> ^
comgt 11:20:15 -> Fout @49, regel 5, Delen door nul. (6)

afrit codes
. comgt wordt beëindigd, gebeurt dit met een "exitcode". Dat is een getal waarnaar wordt teruggekoppeld
het oproepproces om succes of mislukkingen aan te duiden. In het dagelijkse Unix betekent 0 (nul).
succes en al het andere betekent wat de auteur van het programma wil dat het betekent. In
een shellscript, of rechtstreeks op de opdrachtregel, kunt u de inhoud ervan bekijken $? na
te hebben gebeld comgt om de exitcode te onderzoeken.

Voorbeeld:

#!/ Bin / sh
comgt /root/bin/call-isp
als [$? != 0 ]; Dan
echo "Oeps! Er is iets misgegaan."
fi

Intern comgt foutcodes zijn als volgt:

0: Geen enkel probleem. Blijkbaar.
1: Problemen met communicatieapparatuur.
2: Problemen met console (tty)-apparaat.
3: Geheugenproblemen.
4: Vijl- of leidingproblemen.
5: Syntaxisfouten.
6: Delen door nul.
7: Variabel wanbeheer.
8: Systeemproblemen. (Kan niet bellen / Bin / sh of zoiets)

commando's
Commando : : Alias: label
Beschrijving: Geeft een ankerpunt aan waar goto of gosub naartoe kan vertakken.
Syntaxis: trefwoord mag geen speciale tekens bevatten.
Opmerking: Moet de eerste verklaring op een regel zijn.
Zie ook: goto, gosub, return.
Voorbeeld:
: loop
gosub bravo
print "De tijd is ",$time(),"\n"
slaap 1
ga naar de lus
etiket bravo
print "Twonk!\n"
terugkeer

Commando: afbreken
Beschrijving: Zorgt ervoor dat comgt abort() aanroept en een kerndump produceert.
Syntaxis: afbreken
Zie ook: dumpen, verlaten.

Commando: cd
Beschrijving: Wijzig de map.
Syntaxis: cd-map
Opmerkingen: -1 wordt geretourneerd in % als de wijziging niet kon worden aangebracht.
Opmerkingen: directory is een string en kan dus een variabele zijn.
Zie ook: $cwd().
Voorbeeld:
cd "duh"
if % != 0 print "Kon niet naar duh.\n"

Commando: sluiten
Beschrijving: sluit een eerder geopend bestand met open.
Syntaxis: bestand sluiten
Zie ook: geopend.

Commando: dec
Beschrijving: Verlaagt de inhoud van een geheel getalvariabele met 1.
Syntaxis: dec x
Opmerkingen: x is van a tot z of a0 tot z9.
Opmerkingen: Merk op dat "let x=x-1" ook werkt.
Zie ook: let, inc.

Commando: dumpen
Beschrijving: Geeft een overzicht van alle variabelen met gehele getallen die niet nul zijn, en de gewijzigde tekenreeks
Beschrijving: variabelen als logvermeldingen (standaard foutkanaal.)
Syntaxis: dumpen
Zie ook: afbreken, afsluiten

Commando: anders
Beschrijving: U kunt ook opdrachten uitvoeren als de laatste "if" false is gebleken.
Syntaxis: else-opdrachten...
Zie ook: als
Voorbeeld:
if w<350 print "Wauw! Stel je voor.\n"
else print "Rush Limbaugh is een dikke klootzak.\n"

Commando: eprint
Beschrijving: druk een door komma's gescheiden lijst met argumenten af ​​op stderr.
Syntaxis: eprint var,stringvar,"tekst",...
Opmerkingen: Net als afdrukken, maar met de standaardfoutbestandsdescriptor.
Opmerkingen: De foutuitvoer kan worden omgeleid als "2>bestand" is ingeschakeld
Opmerkingen: de opdrachtregel.
Zie ook: afdrukken.

Commando: exec
Beschrijving: Vervangt het huidige comgt-proces door een ander proces.
Syntaxis: exec "commando -args..."
Zie ook: systeem, vork.
Voorbeeld:
#Voltooid script, bel cu.
exec "cu -l "+$dev()+" -s "+$baud()

Commando: afsluiten
Beschrijving: beëindigt de uitvoering van het script met exitcode.
Syntaxis: exit exit_code
Zie ook: afbreken, dumpen.
Voorbeeld:
: error
verlaat 1
:smeggit
verlaat 0

Commando: flits
Beschrijving: Schakelt DTR op het communicatieapparaat gedurende een bepaalde tijd in.
Syntaxis: flash float_constant
Opmerkingen: float_constant is nauwkeurig tot op 1/100ste seconde.
Opmerkingen: Zorgt ervoor dat de modem de draaggolf laat vallen of naar de opdrachtmodus gaat,
Opmerkingen: afhankelijk van modeminstellingen. Stel de baudrate in op 0
Opmerkingen: een tijdje heeft hetzelfde effect.
Zie ook: slaap, set com.
Voorbeeld:
:Loskoppelen
flash 0.5
verlaat 0

Commando: fprint
Beschrijving: druk een door komma's gescheiden lijst met argumenten af ​​in een bestand.
Syntaxis: fprint var,stringvar,"text",...
Opmerkingen: zoals afgedrukt, maar toegevoegd aan een eerder geopend bestand
Opmerkingen: door open.
Zie ook: afdrukken.

Commando: vork
Beschrijving: forks comgt-proces in twee. Beide processen gaan door
Beschrijving: het script uitvoeren.
Syntaxis: vork
Opmerkingen: % retourneert 0 voor onderliggend proces, nieuw proces-ID voor
Opmerkingen: ouder of -1 voor fout.
Zie ook: wacht, dood, pid(), ppid().
Voorbeeld:
vork
als % = -1 ga naar fout
als % = 0 ga naar kind
:ouder
...

Commando: krijg
Beschrijving: tekenreeks ophalen van communicatieapparaat.
Syntaxis: haal time-out "terminators" op $string
Opmerkingen: time-out is een float-constante, terminators is a
Opmerkingen: lijst met tekens die, wanneer ze worden ontvangen, eindigen
Opmerkingen: krijgen. Terminators worden genegeerd wanneer ze als eerste worden ontvangen.
Zie ook: wachten op.
Voorbeeld:
wacht op 60 "verbinden"
if % != 0 ga naar fout
ontvang 2 "^m" $s
print "Verbindingsparameters: ",$s,"\n"

Commando: gosub
Beschrijving: roept een subroutine aan.
Syntaxis: gosub-label
Opmerkingen: Momenteel ondersteunt comgt slechts 128 gosub-niveaus
Opmerkingen: bellen (genoeg!)
Zie ook : :, ga naar, return.
Voorbeeld:
gosub-routine
slaap 1
gosub-routine
goto end
:routine
print "Flimflam!\n"
terugkeer

Commando: ga naar
Beschrijving: Stuurt de uitvoering ergens anders in het script.
Syntaxis: ga naar label
Zie ook: :, gosub, return.
Voorbeeld:
:win95
print "Vandaag wil ik Linux gaan gebruiken, bedankt.\n"
ga naar win95

Commando: hset
Beschrijving: Stel de timer voor honderdtallen in.
Syntaxis: hset-waarde
Opmerkingen: Met deze opdracht wordt de timer van honderden seconden opnieuw ingesteld
Opmerkingen: een waarde voor htime om mee te beginnen.
Zie ook: htime().
Voorbeeld:
hset 0
: loop
print "Tijd in 1/100 sec.: ",htime(),"\n"
slaap 0.01
ga naar de lus

Commando: als
Beschrijving: test een voorwaarde
Syntaxis: als test_condition-opdrachten...
Opmerkingen: Voert voorwaardelijk opdrachten uit als de testvoorwaarde waar is.
Opmerkingen: Testoperatoren zijn = (gelijk), != (niet gelijk),
Opmerkingen: <> (niet gelijk aan) < (kleiner dan), > (groter dan),
Opmerkingen: <= (kleiner of gelijk), >= (groter of gelijk).
Opmerkingen: Alle operators kunnen worden gebruikt met gehele getallen en tekenreeksen.
Opmerkingen: Als test_condition false is, gaat u verder naar
Opmerkingen: de volgende regel.
Zie ook: anders.
Voorbeeld:
als n>30 print "Oh-ho! te veel schapen!\n" ga naar de fout
als n=17 print "Hoera! we hebben genoeg schapen\n" ga naar het feest
als n<17 print "Murray, haal meer schapen.\n" ga naar meer
if $z < "Marmaluke" ga naar ...
als 3*a>5+b naar ...

Commando: incl
Beschrijving: verhoogt de inhoud van een geheel getalvariabele met 1.
Syntaxis: inc x
Opmerkingen: x is az of a0-z9.
Zie ook: dec, laat.

Commando: invoer
Beschrijving: voer de tekenreeks van het toetsenbord in in de tekenreeksvariabele.
Syntaxis: voer $x in
Opmerkingen: invoer beëindigt de invoer alleen met de ENTER-toets.
Opmerkingen: Spaties, tabs en andere grappige tekens zijn allemaal aanwezig
Opmerkingen: opgeslagen in de variabele.
Zie ook: echo instellen.
Voorbeeld:
print "Voer uw volledige naam in:"
voer $n4 in

Commando: doden
Beschrijving: Stuurt een signaal naar een proces.
Syntaxis: signaalprocesID beëindigen
Opmerkingen: Zowel signaal als procesID zijn gehele waarden. Hetzelfde als
Opmerkingen: standaard Unix-kill, behalve dat signaalaliassen dat niet zijn
Opmerkingen: geaccepteerd en signaal is niet optioneel.
Opmerkingen: 0 wordt geretourneerd in % als het signaal verzonden zou kunnen worden, -1
Opmerkingen: anders.
Opmerkingen: Signaal 0 kan worden gebruikt om het bestaan ​​van processen te detecteren.
Zie ook: wacht, pid(), ppid().
Voorbeeld:
vork
laat p=%
als p = 0 ga naar kind
slaap 300
doden 15 p
slaap 1
doden 0 p
if % != 0 print "Kinder beëindigd\n" ga naar ok
print "Kon kind niet beëindigen!\n"
doden 9 p
slaap 1
doden 0 p
if % = 0 print "Kon kind niet doden!\n" ga naar de fout
print "Kind gedood.\n"
:OK
...

Commando: laat
Beschrijving: Voert een variabele toewijzing uit.
Syntaxis: laat x=inhoud
Opmerkingen: x is [$]a0-z9.
Zie ook: inc, dec.
Voorbeeld:
laat a = 5
zij b=(tijd()-a)+5
zij y7=6809
laat z=0%11010111 #Binair
laat z=077324 #octaal
laat z=0xf5b8 #hexadecimaal
laat $c="Daniël "
laat $d=$c+"Chouinard"
let $s5="Fimpin' Jeosaphat!"

Commando: lprint
Beschrijving: druk een door komma's gescheiden lijst met argumenten af ​​naar het logboek.
Syntaxis: fprint var,stringvar,"text",...
Opmerkingen: Net als afdrukken, maar afgedrukt als een logboekinvoer als uitgebreid is ingeschakeld.
Opmerkingen: logboekregistratie wordt verzonden naar stderr.
Zie ook: print, eprint, fprint.

Commando: openen
Beschrijving: Opent een bestand of een communicatieapparaat.
Syntaxis: open com-apparaat, open com (stdin), open bestand BESTAND
Zie ook: sluiten.
Voorbeeld:
open com /dev/cua1
stel com 38400n81 in
open bestand "/tmp/log"
fprintf "Dit is een logboek\n"
bestand sluiten

Commando: afdrukken
Beschrijving: druk een door komma's gescheiden lijst met argumenten af.
Syntaxis: print var,stringvar,"tekst",...
Opmerkingen: spaties en nieuwe regels worden niet automatisch toegevoegd.
Zie ook: eprint, fprint, lprint.
Voorbeeld:
laat b = 26
let $c="tekstvariabelen"
print "Constante tekst ",b," ",$c," time: ",$time(),"\n"

Commando: putenv
Beschrijving: Stelt een omgevingsvariabele in.
Syntaxis: putenv "var=inhoud"
Opmerkingen: Omgevingsvariabelen worden automatisch geëxporteerd,
Opmerkingen: nooit teruggekomen. Kinderprocessen erven de
Opmerkingen: milieu.
Zie ook: $env().
Voorbeeld:
putenv "SCRIPTDIR=/usr/lib/comgt/scripts"
systeem "dothat" # dothat leest env. var. SCRIPTDIR...

Commando: rem Aliassen: #, //
Beschrijving : Opmerking. De rest van de regel wordt genegeerd.
Syntaxis: Merk op dat er een spatie moet volgen op "rem".
Voorbeeld:
#Dit is een opmerking
// Zo ook
rem Dit is geen disco.

Commando: terug
Beschrijving : Retourneert van subroutine.
Syntaxis: retour
Zie ook: gosub.

Commando: verzenden
Beschrijving: stuurt een string naar de communicatielijn (meestal modem).
Syntaxis: tekenreeks verzenden
Opmerkingen: Carriage return (ENTER) wordt niet automatisch verzonden
Opmerkingen: (gebruik ^m).
Voorbeeld:
stuur "atdt555-1212^m"
stuur $g+"^m"
verzend "De tijd is "+$time()+"^m^j"

Commando: instellen
Beschrijving: stelt werkparameters in.
Syntaxis: parameterwaarde instellen
Opmerkingen:

Opdracht Beschrijving:
-------------------------- -------------------- ---------------------------
zet echo aan|uit Toetsenbordecho op het scherm.
set comecho on|off Ontvangen karakters worden op het scherm weergegeven.
set senddelay time_constant Tussentekenvertraging voor "verzenden"
zet negeerhoofdletters aan|uit Hoofdlettergevoeligheid voor "wachten op".
Standaard=aan.
zet clocal aan|uit clocal aan = negeer modemsignalen
stel de standaardinstellingen voor het maken van bestanden in de umask-modus in.
Zie man umask.
zet uitgebreid aan|uit uitgebreid aan = debug-uitvoer ingeschakeld.
stel com comp_params communicatieparameters in.
bijv.: 19200n81, 300e71
baal |||
Pariteit |
Databits |
Stopbits |

Voorbeeld:
echo uitzetten
print "Wachtwoord:"
invoer $ p
druk "\n" af
echo aanzetten
zet comecho aan
zet clocaal aan
stel de verzendvertraging in op 0.1
zet negeerhoofdletters aan
stel com 38400n81 in
set umask 022 # Moet octaal zijn (voorloopnul)
...

Opmerking over clocaal:
Als u wilt dat uw script blijft werken nadat de koerier het heeft gedetecteerd
signaal is weggevallen, zet clocal aan, anders veroorzaakt het een CD-drop
de apparaatlijn om te sluiten (ophangen). Dit zou kunnen gebeuren als,
laten we zeggen dat uw script aanroept en verbinding maakt, en vervolgens de verbinding verbreekt of
laat dtr (flash) vallen en probeert vervolgens opnieuw verbinding te maken.

Commando: slaap
Beschrijving: Pauzeert de uitvoering.
Syntaxis: slaap float_constant
Opmerkingen: Float_constant is nauwkeurig tot op 1/100ste seconde, tenzij
Opmerkingen: meer dan 100 seconden, in welk geval de nauwkeurigheid
Opmerkingen: daalt tot 1 sec.

Voorbeeld:
slaap 0.06
slaap 3
slapen 86400 /* Een hele dag */

Commando: systeem
Beschrijving: Roept een systeemopdracht (unix) aan
Syntaxis: systeem "opdracht"
Zie ook: exec.
Voorbeeld:
: richt
print "lijst van map ",$cwd(),\n"
systeem "ls -l |meer"

Commando: testsleutel
Beschrijving: Test het toetsenbord op toetsaanslagen, retourneert 1 in % indien aanwezig.
Syntaxis: testsleutel
Opmerkingen: Kan alleen testen op de ENTER-toets. Toekomstige versies van comgt
Opmerkingen: zal testen op meer en sleutelcodes retourneren in%.
Zie ook: invoer.
Voorbeeld:
laat n = 1
: loop
print n," schapen... ZZZzzz...\n"
slaap zn
incl. n
testsleutel
als % = 0 ga naar lus

Commando: wacht
Beschrijving: Wacht tot een onderliggend proces is beëindigd.
Syntaxis: wacht
Opmerkingen: de proces-ID van het beëindigde kind wordt geretourneerd in %
Zie ook: vork, doden.
Voorbeeld:
vork
laat p=%
als p=0 ga naar kind
als p=-1 ga naar fout
afdrukken "Wachten tot het kind klaar is..."
wachten
druk "\n" af
if %!=p print "Wacht, ik heb de verkeerde PID!\n" ga naar de fout
print "Kind is klaar.\n"

Commando: wacht op
Beschrijving: Wacht tot een van een lijst met strings wordt ontvangen
Syntaxis: wacht op time-out "string1", "string2", "string3"...
Opmerkingen: Time-out is een zwevende tijdconstante. wacht rustig terug
Opmerkingen: 0 voor de eerste ontvangen string, 1 voor de tweede, enz...
Opmerkingen: en -1 voor een time-out. Hoofdlettergebruik wordt standaard genegeerd, tenzij
Opmerkingen: negeerhoofdletters en kleine letters zijn uitgeschakeld.
Zie ook: krijgen.
Voorbeeld:
: bellen
stuur "atdt555-4411^m"
wacht op 60 "geen vervoerder", "bezet", "geen kiestoon", "verbinden"
als % = -1 ga naar time-out
als % = 0 ga naar nocd
als % = 1 ga naar opnieuw bellen
als % = 2 ga naar fout
als % = 3 ga naar verbinding

Commando: wacht stil
Beschrijving: Wacht tot de communicatielijn een tijdje stopt met ontvangen.
Syntaxis: waitquiet time-out quiettime
Opmerkingen: Zowel de time-out als de stille tijd zijn zwevende tijdconstanten
Opmerkingen: met 1/100ste sec. nauwkeurigheid. Handig voor "slikken"
Opmerkingen: inkomende karakters voor een tijdje of wachten op een
Opmerkingen: onbekende prompt.
Voorbeeld:
:closecon
stuur "afmelden^m"
wachtstil 10 0.5
stuur "ja^m"

Geheel getal functies
I-Functie: Toegang
Beschrijving: Controleert de toegangsrechten tot een bestand
Syntaxis: let x=access("/tmp/file","frwx")
Opmerkingen: De tweede string bevat een of meer van
Opmerkingen: ´f´,´r´,´w´,´x´ om respectievelijk te controleren
Opmerkingen: machtigingen voor bestaan, lezen, schrijven en uitvoeren.
Opmerkingen: Onder root-id is de enige bruikbare controle ´f´, as
Opmerkingen: alle anderen zullen waar terugkeren.
Retourwaarde: 0 als het bestand bestaat, leesbaar, beschrijfbaar,
Retourwaarde: uitvoerbaar, of -1 als dat niet het geval is.
Zie ook: mens toegang(2)

I-Functie: baud
Beschrijving: Retourneert de huidige baudrate van de communicatielijn.
Syntaxis: laat x=baud()
Opmerkingen: Komt niet noodzakelijkerwijs overeen met de snelheid van de modemverbinding.
Zie ook: $baud().

I-Functie: len
Beschrijving: Geeft de lengte van een tekenreeks terug.
Syntaxis: laat x=len($s)
Opmerkingen: "" is nul. Snaren hebben momenteel een maximale lengte van
Opmerkingen: 1024 tekens. comgt kan geen tekenreeksoverloop verwerken
Opmerkingen: helemaal niet.

I-Functie: htime
Beschrijving: Retourneert honderden seconden sinds het begin van het script.
Syntaxis: laat x=htime()
Opmerkingen: Stel een specifieke waarde in met hset.
Zie ook: hset.

I-Functie: pid
Beschrijving: Retourneert proces-ID-nummer van huidig ​​proces (comgt)
Syntaxis: laat x=pid()
Zie ook: ppid(), fork

I-Functie: ppid
Beschrijving: Retourneert het proces-ID-nummer van het bovenliggende proces.
Syntaxis: laat x=ppid()
Opmerkingen: Kan door een gevorkt kind worden gebruikt om de ouder te detecteren
Opmerkingen: proces.

I-Functie: tijd
Beschrijving: Retourneert de tijd in seconden sinds 1 januari 00:00:00 1970 GMT.
Syntaxis: laat x=tijd()
Opmerkingen: Wordt gebruikt om tijdsverschillen te berekenen.
Zie ook: $time()

I-Functie: val
Beschrijving: Retourneert de waarde van de tekenreeks.
Syntaxis: let x=val($x)
Opmerkingen: String is geen expressie; mag alleen [0-9] bevatten
Opmerkingen: karakters. Toekomstige versies van comgt zullen dit wel kunnen
Opmerkingen: evalueer uitdrukkingen. (Misschien) (Dit is geschreven 6
Opmerkingen: jaren geleden.)

I-Functie: uitgebreid
Beschrijving: Retourneert de waarde van de uitgebreide instelling.
Syntaxis: let x=verbose()
Opmerkingen: 0=uit, 1=aan.

Draad functies
S-Functie: basisnaam
Beschrijving: Retourneert het basisnaamgedeelte van het pad.
Syntaxis: let $x=$basisnaam($p)
Opmerkingen: $basename("/usr/bin/more")="meer"
Zie ook: $dirname().

S-Functie: baud
Beschrijving: Retourneert een tekenreeksrepresentatie van de huidige baudsnelheid.
Syntaxis: laat $x=$baud()
Opmerkingen: Gedefinieerd door "set com"
Zie ook: baud(), set com.

S-Functie: cwd
Beschrijving: Retourneert de huidige padnaam van de werkmap.
Syntaxis: laat $x=$cwd()
Zie ook: cd.

S-Functie: dev
Beschrijving: Retourneert de huidige padnaam van het communicatieapparaat.
Syntaxis: let $x=$dev()
Opmerkingen: gedefinieerd door "-d" opdrachtregelargument of "open com"
Zie ook: open com.

S-Functie: mapnaam
Beschrijving: Retourneert de mapnaam als onderdeel van het pad.
Syntaxis: let $x=$mapnaam($p)
Opmerkingen: $dirname("/usr/bin/more")="/ Usr / bin"
Zie ook: $basisnaam().

S-Functie: omg
Beschrijving: Retourneert de inhoud van een omgevingsvariabele
Syntaxis: let $x=$env("HOME")
Opmerkingen: Niet-bestaande variabelen retourneren een lege tekenreeks.
Zie ook: putenv.

S-functie: zeskant
Beschrijving: Converteert waarde naar hexadecimale weergave
Syntaxis: laat $x=$hex(x)
Opmerkingen: Letters af in kleine letters, zonder voorafgaande "0x"
Zie ook: $hexu(), $oct().

S-functie: hexu
Beschrijving: Converteert waarde naar hexadecimale weergave
Syntaxis: laat $x=$hex(x)
Opmerkingen: Letters AF in hoofdletters, geen voorafgaande "0x"
Zie ook: $hex(), $oct().

S-functie: hms
Beschrijving: Converteert het aantal seconden naar een tijdreeks
Syntaxis: laat $x=$hms(x)
Opmerkingen: Het formaat is "UU:MM:SS". Handig voor chronometerdisplays
Opmerkingen: Gebruik met "time()", probeer niet een variabele te verhogen
Opmerkingen: elke seconde met "slaap 1". (Zie ISP-scriptvoorbeeld)
Opmerkingen: Het formaat wordt "UUU:MM:SS" na 99 uur, 59 minuten,
Opmerkingen: 59s...
Zie ook: tijd().

S-functie: links
Beschrijving: Retourneert het linkergedeelte van een tekenreeks
Syntaxis: laat $x=$left($s,l)
Opmerkingen: $s=Brontekenreeks, l=lengte
Opmerkingen: l moet kleiner zijn dan de lengte van de string.
Zie ook: $right(), $mid().

S-functie: midden
Beschrijving : Retourneert het middengedeelte van een tekenreeks.
Syntaxis: let $x=$mid($s,s,l)
Opmerkingen: $s=Brontekenreeks, s=start, l=lengte
Opmerkingen: s moet kleiner zijn dan de lengte van de string, l kan dat ook zijn
Opmerkingen: een enorm getal (9999) om de rechterkant van a weer te geven
Opmerkingen: string tot het einde. het eerste teken van een string is
Opmerkingen: positie 0, niet 1.
Zie ook: $right(), $left().

S-functie: okt
Beschrijving: Converteert waarde naar octale weergave.
Syntaxis: laat $x=$oct(x)
Zie ook: $hex(), $hexu().

S-functie: rechts
Beschrijving: Retourneert het rechtergedeelte van een tekenreeks.
Syntaxis: laat $x=$right($s,l)
Opmerkingen: $s=Brontekenreeks, l=lengte
Opmerkingen: l moet kleiner zijn dan de lengte van de string.
Zie ook: $left(), $mid().

S-Functie: rpipe
Beschrijving: Retourneert de eerste regel van een door het systeem doorgesluisde opdracht
Syntaxis: let $x=$rpipe("/bin/ls |grep mijnbestand")
Opmerkingen: Niet erg nuttig tenzij gebruikt met kop, staart, grep,
Opmerkingen: enz...
Zie ook: systeem.

S-functie: tijd
Beschrijving: Retourneert een lokale tijdreeks van 24 tekens
Syntaxis: laat $x=$time()
Zie ook: tijd().
Opmerkingen: De tijd heeft dit formaat: ma 8 april 14:21:22 1996
012345678901234567890123
1 2

S-Functie: tolager
Beschrijving: Retourneert een tekenreeks in kleine letters.
Syntaxis: let $x=$tolower($y)

S-Functie: bovenstuk
Beschrijving: Retourneert een tekenreeks in hoofdletters.
Syntaxis: let $x=$toupper($y)

test exploitanten
Operator Beschrijving Voorbeeld Resultaat
= gelijk als 1+2=3 ja
!= niet gelijk als 1+2!=3 nee
<> niet gelijk als 1+2<>3 nee
> Groter dan als 1+3>3 ja
< Minder dan als 1+3<3 nee
>= Groter of gelijk als 3>=3 ja
<= Groter of gelijk als 2<=3 ja

Tekenreeksen kunnen worden vergeleken met dezelfde operatoren.

"aaa" < "aab", "aaaa" > "aaa", "Test" != "test", "Eén" = "Eén",
"A" > "a", "Fumble" <= "Fumigate", "Farsical" <> "Comedic"

Note dat "set negeercase aan" NIET van toepassing is op stringvergelijkingen.

Uitdrukking exploitanten
Operator Beschrijving Voorbeeld Resultaat
+ Optelling laat a=2+2 4
+ Aaneenschakeling let $b="aa"+"bb" "aabb"
- Aftrekken laat e=2-5 -3
* Vermenigvuldiging laat f=11*2 22
/ Deling laat g=34/11 3
& Bit-Wise EN laat h=42&7 2
| Bit-Wise OR laat a=42|5 47
^ Bit-Wise XOR laat a = 42 ^ 7 45

Voorbeelden van gemengde expressies:

#Retourneert het aantal seconden sinds 00:00:00
laat $t=$time() #Maak een momentopname.
let a=(val(mid$($t,11,2))*3600)+(val(mid$($t,14,2))*60)+val(mid$($t,17,2))
#Let op de extra sets haakjes omdat de expressie van comgt
#evaluator is hersendood.
#5-2+1 zou je bijvoorbeeld 4 moeten opleveren, toch? Nou ja, volgens
#getvalue(), het geeft eigenlijk 2, omdat het er enigszins vanaf doet
#rechts naar links.
#Dus om 5-2+1 correct te evalueren, gebruik je (5-2)+1. Als je gebruikt
#eenvoudige berekeningen met twee elementen, maak je er geen zorgen over.
#5-2 geeft je 3.

#Aaneenschakeling (oproepen cu)
exec "cu -l "+$dev()+" -s "+$baud()"

#In een testconditie
als a+c > strlen($c) te veel gaat

#Stringvergelijking
laat $t=$mid($time(),11,8)
if $t > "19:59:59" print "Daar is het te laat voor!\n" ga naar toolate
if $t < "08:00:00" print "Te vroeg!\n" ga naar te vroeg
if $t = "00:00:00" print "Oh god! Het is Twinkee-tijd!\n"

BEKENDE KENMERKEN


De getvalue()-parser. Ik moet erom lachen, dus ik denk dat ik het zo laat. -
[e-mail beveiligd]

MILIEU VARIABELEN


COMGTPIN - de 4-cijferige pincode van de SIM voor gebruik door het PIN-script COMGTAPN - de APN om naar te schrijven
de datakaart, gebruikt door het APN-script.

AUTEURS


Daniel.Chouinard[e-mail beveiligd]> schreef het origineel dcon utility.

Paul Hardwick[e-mail beveiligd]> bijgewerkt voor de nieuwste compilers, op voorwaarde dat de ingebouwde
in scriptfunctionaliteit en getest met GPRS- en 3G-datakaarten.

Martin Gregorius[e-mail beveiligd]> schreef de originele manpagina voor comgt van het dcon
documentatie en verpakt comgt voor distributie.

Geschiedenis
Daniel Chouinard schreef het grootste deel (90%) ervan dcon in 1989 toen hij begon met Unix Apps
technische ondersteuning, meestal via modem naar klantsystemen. Hij was het beu om al die teksten te typen
wachtwoorden en grappige kostencodes elke keer dat hij cu gebruikte. Ook het bedrijf waar hij werkte
hiervoor was een systeem nodig dat de gesprekstijden en geschatte kosten registreerde. Dus dcon was geboren.
Zes of zeven jaar later (1996) gebruikte hij pppd om verbinding te maken met zijn ISP-site. Hij was
min of meer blij mee de chat maar ontdekte dat het stroomcontrole en controles op meerdere reacties ontbeerde
van "atdt...". Hij wilde dat het verschillende dingen zou doen voor "geen provider", "geen kiestoon", en
"druk bezig". Hoewel hij dat dacht de chat zou waarschijnlijk op een dag worden verbeterd, als hij het ontdekte
dcon.c op een van zijn oude 45M-tapes probeerde hij het te compileren op zijn Linux-box en, zie en
zie, dat gebeurde. Uiteindelijk heeft hij er een paar dingen aan toegevoegd (kill, fork, wait, 1/100 sec.
keer) en liet het daarbij.

Een paar jaar geleden vond Paul Hardwick het programma, dcon 0.97, voor het laatst gewijzigd in 1996.
Het doel van dit programma was om scripts uit te voeren die de seriële poorten van Linux zouden besturen. De
implementatie leek erg op iets dat hij voor Windows had geschreven. Hoe dan ook, liever
Om het opnieuw uit te vinden, nam hij contact op met de auteur, Daniel Chouinard, en vroeg zijn toestemming om het opnieuw te gebruiken
de code. Gelukkig gaf hij toestemming en belde een eenvoudig maar nuttig hulpprogramma comgt was
gemaakt. Paul neemt geen eer voor de motor, behalve dat hij compatibel is met de hedendaagse motoren
compilers. Het is eigenlijk dcon herverpakt.

20 oktober, 2006 comgt(1)

Gebruik comgt online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

  • 1
    Firebird
    Firebird
    Firebird RDBMS biedt ANSI SQL-functies
    & draait op Linux, Windows &
    verschillende Unix-platforms. Functies
    uitstekende gelijktijdigheid en prestaties
    & stroom...
    Firebird downloaden
  • 2
    KompoZer
    KompoZer
    KompoZer is een wysiwyg HTML-editor die gebruikt
    de Mozilla Composer-codebasis. Als
    De ontwikkeling van Nvu is gestopt
    in 2005 repareert KompoZer veel bugs en
    voegt een f toe...
    KompoZer downloaden
  • 3
    Gratis Manga Downloader
    Gratis Manga Downloader
    De gratis manga-downloader (FMD) is een
    open source applicatie geschreven in
    Object-Pascal voor het beheer van en
    manga downloaden van verschillende websites.
    Dit is een spiegel...
    Download gratis manga-downloader
  • 4
    UNetbootin
    UNetbootin
    Met UNetbootin kunt u opstartbare
    Live USB-drives voor Ubuntu, Fedora en
    andere Linux-distributies zonder
    een cd branden. Het draait op Windows, Linux,
    En ...
    UNetbootin downloaden
  • 5
    Dolibarr ERP-CRM
    Dolibarr ERP-CRM
    Dolibarr ERP - CRM is eenvoudig te gebruiken
    ERP en CRM open source softwarepakket
    (uitgevoerd met een web-php-server of als
    stand-alone software) voor bedrijven,
    fundamenten...
    Dolibarr ERP - CRM downloaden
  • 6
    SQuirreL SQL-client
    SQuirreL SQL-client
    SQuirreL SQL Client is een grafische SQL
    client geschreven in Java die het mogelijk maakt
    u om de structuur van een JDBC te bekijken
    compatibele database, blader door de gegevens in
    tafels...
    SQuirreL SQL-client downloaden
  • Meer "

Linux-commando's

Ad