Este é o comando comterp que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS
PROGRAMA:
NOME
comterp - demonstrador de interpretador de comando distribuído
SINOPSE
computador
computador remoto
computador servidor "portnum"
computador logger "portnum"
computador cliente "host" "portnum" ["arquivo"]
computador telcat "host" "portnum" ["arquivo"]
computador execute o "arquivo"
computador "expr"
DESCRIÇÃO
comterp demonstra o interpretador de comandos incorporado ao ivtools. Um usuário (ou cliente
programa) pode interagir com o comterp via stdin e stdout ou telnet (quando o ACE está embutido).
A sintaxe do comando é uma lista de comandos separados por ponto e vírgula com um número arbitrário de
parâmetros entre parênteses, com suporte para parâmetros opcionais e palavras-chave
argumentos, ou seja:
command2 (arg1 arg2 arg3: key1 val1: key2 val2);
command1 (arg1 arg2 arg3: key1 val1: key2 val2)
Expressões binárias semelhantes a C podem ser incorporadas em qualquer lugar na linguagem de comando, usando o
operadores na tabela abaixo. As variáveis podem ser criadas instantaneamente com uma atribuição
operador (ou seja, "bola = 1" cria uma variável "bola" inteira definida como 1). Sem terminação
expressões causam uma extensão automática da linha de comando (até que o analisador determine o
expressão está completa). "()," {} "e" [] "podem ser usados alternadamente.
COMANDO OPÇÕES
computador
Invoque um único interpretador de comando para interagir via stdin e stdout.
controle remoto
Invoque um único interpretador de comandos, como o padrão, e inclua um comando remoto para
acessando outros comterp's em modo de servidor.
servidor comterp "portnum"
Escuta e aceita conexões no portnum, em seguida, configure um interpretador de comandos para esperar
para e processar comandos dessa conexão.
comterp logger "portnum"
Escuta e aceita conexões no portnum e simplesmente encaminha as mensagens recebidas
para stdout, enquanto ack'ing de volta com novas linhas. Para fins de depuração, não é realmente um uso de
o intérprete.
cliente comterp "host" "portnum" ["arquivo"]
Conecte-se a um portnum em um host e envie / receba buffers de texto terminados em nova linha. Para
para fins de depuração, não é realmente um uso do interpretador.
comterp telcat "host" "portnum" ["arquivo"]
Conecte-se a um portnum em um host, cat o arquivo e feche a conexão. Não é realmente um uso
do intérprete também.
comterp execute "arquivo"
Execute o conteúdo do arquivo e saia.
comterp "expr"
Avalie a expressão única e saia.
OPERADOR TABELA
Operadores Comando Nome Prioridade Tipo de Ordem
--------- ------------ -------- ----- ----
. ponto 130 binário R para L
`bquote 125 prefixo unário R para L
! negar 110 prefixo unário R para L
~ bit_not 110 prefixo unário R para L
++ incr 110 prefixo unário R-para-L
++ incr_after 110 R-para-L postfix unário
- menos 110 prefixo unário R para L
- decr 110 prefixo unário R para L
- decr_after 110 R-para-L postfix unário
** repetir 90 binários L-para-R
.. iterar 80 binário L-para-R
% mod 70 binário L-para-R
* binário mpy 70 L para R
/ div 70 binário L para R
+ adicionar 60 binários L-para-R
- binário sub 60 L para R
<< lshift 55 L-para-R binário
>> binário rshift 55 da esquerda para a direita
<lt 50 binário L-para-R
<= lt_or_eq 50 binário L-para-R
> gt 50 binário L-para-R
> = gt_or_eq 50 binário L-para-R
! = not_eq 45 binário L-para-R
== eq 45 binário L-para-R
& bit_and 44 binário L-para-R
^ bit_xor 43 binário L-para-R
| bit_ou 42 binário L-para-R
&& e 41 binários L-para-R
|| ou 40 binários L-para-R
, tupla 35 binário L-para-R
,, stream concat 33 binário L-para-R
$ stream 32 prefixo unário R-para-L
$$ list 32 prefixo unário R-para-L
% = mod_assign 30 binário R para L
* = mpy_assign 30 binário R-para-L
+ = add_assign 30 binário R-para-L
- = sub_atribuir 30 binário R para L
/ = div_assign 30 binário R para L
= atribuir 30 binários R-para-L
; seq 10 binário L-para-R
MATEMÁTICO COMANDOS:
n = min (ab) - retorno mínimo de a e b
n = max (ab) - retorno máximo de a e b
n = abs (a) - retorna o valor absoluto de a
dbl = exp (x) - retorna o valor e elevado à potência de x
dbl = log (x) - retorna o logaritmo natural de x
dbl = log10 (x) - retorna o logaritmo de base 10 de x
dbl = log2 (x) - retorna o logaritmo de base 2 de x
dbl = pow (xy) - retorna o valor de x elevado à potência de y
dbl = acos (x) - retorna o arco cosseno de x em radianos
dbl = asin (x) - retorna o arco seno de x em radianos
dbl = atan (x) - retorna o arco tangente de x em radianos
dbl = atan2 (yx) - retorna o arco tangente de y sobre x
dbl = cos (x) - retorna o cosseno de x radianos
dbl = sin (x) - retorna o seno de x radianos
dbl = tan (x) - retorna a tangente de x radianos
dbl = sqrt (x) - retorna a raiz quadrada de x
dbl = pi () - retorna o valor de pi
dbl = radtodeg (dbl) - converte radianos em graus
dbl = degtorad (dbl) - converter graus em radianos
num = floor (num) - retorna o valor inteiro mais próximo menor ou igual ao argumento
num = ceil (num) - retorna o valor inteiro mais próximo maior ou igual ao argumento
num = round (num) - retorna o valor inteiro mais próximo
AFINAR TRANSFORMAR E MATRIX COMANDOS:
point = xform (x, y a00, a01, a10, a11, a20, a21) - transformação afim das coordenadas x, y
afim = invertido (a00, a01, a10, a11, a20, a21) - transformada afim invertida
matriz =xpor(matriz) - transpor uma matriz arbitrária
matriz = matriz * matriz - multiplicação de matriz
ESTATÍSTICO / ALEATÓRIO COMANDOS:
soma (val1 [, val2 [, ..., valn]]) - retorna a soma dos valores
média (val1 [, val2 [, ..., valn]]) - retorna a média dos valores
var (val1 [, val2 [, ..., valn]]) - retorna a variância dos valores
stddev (val1 [, val2 [, ..., valn]]) - retorna o desvio padrão dos valores
rand ([minval, maxval]) - retorna um número aleatório entre 0 e 1 ou minval, maxval
srand (seedval) - gerador de número aleatório semente
LISTA COMANDOS:
lst = list ([olst | strm | val]: strmlst: attr: size n) - criar lista, copiar lista ou converter
transmitir canais
val = at (list | attrlist | str n: set val: ins val) - retornar (ou definir ou inserir após) enésimo item
em uma lista ou string
num = size (list | attrlist | str) - retorna o tamanho de uma lista (ou string)
val = index (list | str val | char | str: last: all: substr) - índice de retorno do valor (ou char ou
string) na lista (ou string), nulo se não for encontrado.
STREAM COMANDOS:
val = next (stream) - retorna o próximo valor do stream
strm = stream (ostrm | list | attrlist | val) - copiar stream ou converter lista
cnt = each (strm) - fluxo transversal retornando seu comprimento
comp = filter (comps classid) - fluxo de filtro de comps para correspondência de classid
CONTROLE COMANDOS (usando postar avaliação):
val = cond (testexpr trueexpr falseexpr) - avalia testexpr, e se verdadeiro, avalia e
retorna trueexpr, caso contrário, avalia e retorna falseexpr
val = if (testexpr: then expr: else expr) - avalia testexpr e executa o: then
expressão se for verdadeira, a expressão: else se for falsa.
val = for (initexpr whileexpr [nextexpr [bodyexpr]]: body expr) - for loop
val = while ([testexpr [bodyexpr]]: nilchk: até: body expr) - loop while
val = switch (pares de corpo-chave val) - declaração switch (: casen para pos.,: case_n para neg.,
caso contrário: símbolo)
continue - pule para a próxima iteração do loop for ou while
break ([retval]) - quebra de loop for ou while
OUTROS COMANDOS
help (cmdname [cmdname ...]: all: posteval) - ajuda para comandos
val = trace ([sinalizador]: get) - alternar ou definir o modo de rastreamento
pause ([msgstr]) - pausa a execução do script até C / R
step () - alterna a execução do script passo a passo
fileobj | pipeobj = open ([nome do arquivo [modestr]]: pipe: in: out: err) - comando abrir arquivo
close (fileobj | pipeobj) - comando para fechar o arquivo
[str] = print ([fmtstr] [val [val1 [... valn]]]: string |: str: out: err: arquivo fileobj | pipeobj
: prefixo str) - imprime valor com string de formato opcional
str = gets (fileobj | pipeobj) - obtém uma string terminada em uma nova linha de um arquivo
val = global (símbolo) | global (símbolo) = val | global (símbolo: limpar) | global (: cnt) - fazer símbolo
global
int | lst = symid (símbolo [símbolo ...] |: max) - retorna id (s) inteiro (s) associado (s) a
símbolo (s)
sym | lst = símbolo (symid [symid ...]) - símbolo (s) de retorno associado (s) a id (s) inteiro (s)
val | lst = symval (símbolo [símbolo ...]) - valor de retorno (s) associado ao símbolo
variáveis (s)
sym | lst = symadd (sym | str [sym | str ...]) - cria símbolo (s) e retorna sem pesquisa.
sym = symvar (sym) - símbolo de retorno como está
str = symstr (sym) - versão string de retorno do símbolo
n = strref (str | symid) - contagem de referência de string de retorno
lst = split (symbol | string: tokstr [delim]: tokval [delim]: keep: reverse) - símbolo de divisão
ou string na lista de caracteres (ou tokens).
str = join (clist: sym) - lista de junção de caracteres em string
str = substr (str n | str: after: nonil) - extrai caracteres de uma string (: nonil retorna
string se não houver correspondência)
bool = eq (str1 str2: n len) - comparação parcial de strings
bool = eq (sym1 sym2: sym) - comparação de símbolos
postfix (arg1 [arg2 [arg3 ... [argn]]]) - ecoa argumentos postfix não avaliados (com
[narg | nkey] após comandos definidos, {narg | nkey} após comandos indefinidos, (narg) após
e um * seguindo os comandos de pós-avaliação)
parse (fileobj) - analisa uma única expressão de um arquivo
arr = posteval (arg1 [arg2 [arg3 ... [argn]]]) - avaliar cada argumento fixo (até
nil) e array de retorno
sym = attrname (atributo) - campo de nome de retorno do par pontilhado
val = attrval (atributo) - campo de valor de retorno do par pontilhado
dotlst = dot (name) - construir uma lista de pares pontilhados vazia
quit () - sai do intérprete
exit () - sai do aplicativo inteiro
empty () - declaração vazia
val = run (filename: str: popen) - executa comandos do arquivo (ou string)
val = remote (hoststr portnum cmdstr: nowait) - avalie remotamente a string de comando e então
avaliar localmente a sequência de resultados
val = eval (cmdstr | funcobj [cmdstr | funcobj ...]: symret) - avalia string (ou funcobj) como
comandos, opcionalmente, retorna o símbolo em vez de nulo
funcobj = func (body: echo) - encapsula um corpo de comandos em um objeto executável
val = shell (cmdstr) - avalia o comando no shell
você dorme(mseg) - microssegundos de sono
mudo ([sinalizador]) - definir ou alternar sinalizador mudo
nil ([...]) - aceita qualquer argumento e retorna nulo
c = char (num: u) - converte qualquer numérico em um caractere
s = short (num: u) - converte qualquer numérico em um short
i = int (num: u) - converte qualquer numérico em um int
l = long (num: u) - converte qualquer numérico em longo
f = float (num) - converte qualquer numérico em um float
d = double (num) - converte qualquer numérico em duplo
sym | lst = type (val [val ...]) - símbolo de tipo de retorno para valor (es)
sym | lst = class (val [val ...]) - símbolo de retorno de classe para valor (es) do tipo de objeto
int = ctoi (char) - converte caractere em inteiro
flag = isspace (char) - retorna verdadeiro se o caractere for um espaço em branco
flag = isdigit (char) - retorna true se o caractere for um dígito numérico
flag = isspace (char) - retorna verdadeiro se o caractere estiver em ordem alfabética
str = arg (n) - retorna o argumento da linha de comando
n = narg (n) - retorna o número de argumentos da linha de comando
num = nand (ab) - NAND bit a bit (AND negado)
num = nor (ab) - NOR bit a bit (OU negado)
num = xnor (ab) - XNOR bit a bit (XOR negado)
SOMENTE IN SERVIDOR MODA
str = timeexpr (comstr: sec n) - string de comando a ser executada em intervalos
Use comterp online usando serviços onworks.net