shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script-pt] Enviando resultados de um arquivo para uma API.


From: Itamar Santos de Souza
Subject: Re: [shell-script-pt] Enviando resultados de um arquivo para uma API.
Date: Sat, 24 Oct 2020 22:29:15 +0000 (UTC)

Caro George eu não entendo muito do jq

Mas esse json está mal formado que pode atrapalhar o funcionamento dele, no segundo e terceiro candidate tem uma vírgula sobrando em gender no final, pois logo na sequência fecha a chave.

Experimente eliminar essas vírgulas

E como sugestão tente isso:

jq '.results[].candidate|.birthdate,.name,.lastName'jq '.results[].candidate|.birthdate,.name,.lastName'

Acho que talvez seja o resultado que espere, mas como disse não manjo muito do jq

[]'s
Em sábado, 24 de outubro de 2020 17:53:51 BRT, George Robinson <george.robinson.br@gmail.com> escreveu:


Boa tarde lista!

Olha, eu tirei o dia pra estudar um pouco de jq para manipular arrays no formato json, e estou com uma dificuldade no tratamento dos dados. Por exemplo, tenho um arquivo com o seguinte conteúdo:

{
  "results": [
    {
      "id": 8303393,
      "candidate": {
        "birthdate": "1993-05-27",
        "id": 4133266,
        "name": "André",
        "lastName": "Dias",
        "gender": "male"
      },
      "job": {
        "id": 41612,
        "name": "Operador de Atendimento "
      }
    },
    {
      "id": 8311552,
      "candidate": {
        "birthdate": "1996-05-27",
        "id": 3694309,
        "name": "William",
        "lastName": "Teodoro",
        "gender": "male",
      },
      "job": {
        "id": 41612,
        "name": "Operador de Atendimento "
      }
    },
    {
      "id": 8316390,
      "candidate": {
        "birthdate": "1992-10-13",
        "id": 1524207,
        "name": "Amanda",
        "lastName": "Domingos Martins",
        "gender": "female",
      },
      "job": {
        "id": 41612,
        "name": "Operador de Atendimento "
      }
    }
  ],
  "totalResults": 4103,
  "page": 42,
  "totalPages": 42
}

Estou tentando filtrar a data de nascimento, nome, sobrenome para uma saída mais limpa e estou procedendo da seguinte maneira:

jq ".results[].candidate.birthdate, .results[].candidate.name, .results[].candidate.lastName" 41612_candidates.txt

porém minha saída tem sido esta:

"1993-05-27"
"1996-05-27"
"1992-10-13"
"André"
"William"
"Amanda"
"Dias"
"Teodoro"
"Domingos Martins"


Eu gostaria de fazer com que cada linha exibisse os 3 dados do candidato 1, candidato 2 e candidato 3. Tentei fazer de outra forma, porém, ele criou uma análise combinatória entre todos os cruzamentos possíveis, como numa matriz de ordem 3 com a seguinte saída:

jq '"\(.results[].candidate.birthdate),\(.results[].candidate.name),\(.results[].candidate.lastName)"' 41612_candidates.txt

"1993-05-27,André,Dias"
"1996-05-27,André,Dias"
"1992-10-13,André,Dias"
"1993-05-27,William,Dias"
"1996-05-27,William,Dias"
"1992-10-13,William,Dias"
"1993-05-27,Amanda,Dias"
"1996-05-27,Amanda,Dias"
"1992-10-13,Amanda,Dias"
"1993-05-27,André,Teodoro"
"1996-05-27,André,Teodoro"
"1992-10-13,André,Teodoro"
"1993-05-27,William,Teodoro"
"1996-05-27,William,Teodoro"
"1992-10-13,William,Teodoro"
"1993-05-27,Amanda,Teodoro"
"1996-05-27,Amanda,Teodoro"
"1992-10-13,Amanda,Teodoro"
"1993-05-27,André,Domingos Martins"
"1996-05-27,André,Domingos Martins"
"1992-10-13,André,Domingos Martins"
"1993-05-27,William,Domingos Martins"
"1996-05-27,William,Domingos Martins"
"1992-10-13,William,Domingos Martins"
"1993-05-27,Amanda,Domingos Martins"
"1996-05-27,Amanda,Domingos Martins"
"1992-10-13,Amanda,Domingos Martins"

Estou novamente recorrendo aos senhores, pq eu realmente esgotei minhas tentativas através de tutoriais... rsrs

Mais uma vez, obrigado!

Em sex., 23 de out. de 2020 às 08:44, George Robinson <george.robinson.br@gmail.com> escreveu:
Então Itamar,

Com os valores capturados através da sua dica, realmente o while não faz tanto sentido. Ele fazia antes, quando eu gerava um arquivo .txt para ler os valores e gerar um loop. É claro que, com esses valores já filtrados na saída do comando, vc sintetizou muito bem, e acredito que em termos de eficiência, a execução é muito mais limpar do que usando while. Acredito que a diferença entre meninos e homens está nessa capacidade de avaliar e utilizar o que melhor se enquadra e cada caso.

Anteriormente, sim, eu tinha um meio de buscar valores, mas vc eliminou essa necessidade, dado que o awk já captura as variáveis que necessito.

Eu não me atentei a isso e nem perceberia essa mudança na lógica se não fosse vc e todos os grandes mestres dessa lista!

Muito obrigado mais uma vez!!!!

Em sex., 23 de out. de 2020 às 08:38, Itamar Santos de Souza por (shell-script-pt) <shell-script-pt@nongnu.org> escreveu:
Que bom que ajudou George

Mas me permita algumas observações:
1. Qdo vc determina o valor do HOST para seguir no curl vc coloca o &&, como um condicional de executar somente se houver sucesso, mas nessa construção sempre haverá, então acho que o ideal seria separar os comandos com um ponto-e-vírgula ( ; ).
Todavia esse HOST parece ser algo que pode ser determinado fora do contexto desse loop, como é o caso da variável USERNAME que usa posteriormente

2. O while é porque vc espera obter mais de um registro do speedtest?
Mas eu acredito que tudo poderia ser feito dentro do awk numa subshell passando diretamente ao curl:

$(./speedtest-cli --share --json | awk -F, -v host=$HOST -v user=$USERNAME 'BEGIN{OFS=FS;OFMT="%.2f"}{gsub("\"","");gsub(/ ?[^ ]*: /,"");print "username=" user "&computername=" host "&latency=" int($16+0.5) "&externalip=" $5 "&isp=" $6 "&download=" int($12/1000000) "&resultsurl=" $14 "&upload=" int($17/1000000)}' )

Testa cada parte separadamente antes.

É só uma sugestão adicional

[]'s



Em quinta-feira, 22 de outubro de 2020 22:44:09 BRT, George Robinson <george.robinson.br@gmail.com> escreveu:


Olá Itamar,

Tive que fazer uns ajustes por conta do macOS. Mas em linhas gerais, vc matou a cobra e mostrou o pau com essa simplicidade de código:

Minha versão final ficou assim:

./speedtest-cli --share --json | awk -F, 'BEGIN{OFS=FS;OFMT="%.2f"}{gsub("\"","");gsub(/ ?[^ ]*: /,"");print $5, $6, int($12/1000000), $14, int($16+0.5), int($17/1000000)}' | while IFS=, read ip isp down share latency up; do HOST=$(echo $HOST | cut -d. -f1) &&  curl -X POST https://myspeedtest.com.br/api/registra_test -d "username=$USERNAME&computername=$HOST&latency=$latency&externalip=$ip&isp=$isp&download=$down&resultsurl=$share&upload=$up" ; done

Fiz uma conversão arrendondada para os valores de download, upload e latencia. Capturei o hostname e o username do ambiente do zsh e voilá!!

Em qui., 22 de out. de 2020 às 19:34, Itamar Santos de Souza por (shell-script-pt) <shell-script-pt@nongnu.org> escreveu:
Caro George

Entro tarde nessa conversa pois tive problemas com meu e-mail que está mandando tudo para o spam

Mas tenta essa abordagem se estiver disponível:

awk -F, 'BEGIN{OFS=FS;OFMT="%.2f"}{gsub("\"","");gsub(/ ?[^ ]*: /,"");print $5, $6, $12/1000000, $14, $16/1000000, $17/1000000}' speedtest.txt

Acho que essas opções estejam disponíveis na Mac também , mas confesso não ter certeza

Em quinta-feira, 22 de outubro de 2020 18:27:55 BRT, George Robinson <george.robinson.br@gmail.com> escreveu:


Prezada lista!

Estou recorrendo aos senhores, dessa vez, não para pedir algo pronto, mas para me ajudar a deixar essa instrução mais elegante. Tive que levar a execução para um macbook que usa ZSH como shell padrão. O problema não é o zsh, mas a necessidade de ter que usar o utilitário brew pra baixar uma série de ferramentas que nativamente não tem suporte no mac os (incluindo o jq). Então, eu peguei o que o Julio passou com o que o Casanova fez e tratei os dados da seguinte forma:


1 - Gero um arquivo de saída no formato json speedtest.txt com o seguinte conteúdo:

{"client": {"rating": "0", "loggedin": "0", "isprating": "3.7", "ispdlavg": "0", "ip": "179.249.9.71", "isp": "TIM Brasil", "lon": "-43.3307", "ispulavg": "0", "country": "BR", "lat": "-22.9201"}, "bytes_sent": 10756096, "download": 3399036.040413456, "timestamp": "2020-10-22T20:08:48.923417Z", "share": "http://www.speedtest.net/result/10294847782.png", "bytes_received": 5225808, "ping": 47.949, "upload": 7956030.7943717595, "server": {"latency": 47.949, "name": "Duque de Caxias", "url": "http://rj1.vialinktelecom.com.br:8080/speedtest/upload.php", "country": "Brazil", "lon": "-43.3119", "cc": "BR", "host": "rj1.vialinktelecom.com.br:8080", "sponsor": "Via Link Telecomunicacoes", "lat": "-22.7858", "id": "9316", "d": 15.057214026458773}}

2 - Uso o cut para filtrar os dados que preciso:

cat speedtest.txt | cut -d, -f5,6,12,14,16,17 --output-delimiter $','

saída:

"ip": "179.249.9.71", "isp": "TIM Brasil", "download": 3399036.040413456, "share": "http://www.speedtest.net/result/10294847782.png", "ping": 47.949, "upload": 7956030.7943717595

Faço um loop para extrair cada parte string separada por virgulas:

while IFS=, read ip isp down share latency up; do ip=$(echo $ip | cut -d: -f2) && isp=$(echo $isp | cut -d: -f2) && down=$(echo $down | cut -d: -f2) && down=$(echo "scale=2; $down/1000000"|bc) && share=$(echo $share | awk -F" " '{print $2}') && latency=$(echo $latency |cut -d: -f2) && latency=$(echo "scale=2; $latency/1000000"|bc) && up=$(echo $up | cut -d: -f2) && up=$(echo "scale=2; $up/1000000" |bc) && echo $ip $isp $down $share $latency $up; done

Desta forma, para cada item, eu tratei no pipe para utilizar seus respectivos valores, me gerando as seguintes saídas:

"179.249.9.71" "TIM Brasil" 3.39 "http://www.speedtest.net/result/10294847782.png" 0 7.95

Antes que utilize o sed pra retirar as " " que eu preciso desprezar, seria possível fazer isso aproveitando essa linha ? Ou alguém teria uma dica mais elegante? 

Lembrando que só posso contar com recursos do zsh!

Muito obrigado!




Em qui., 22 de out. de 2020 às 11:54, George Robinson <george.robinson.br@gmail.com> escreveu:
Casanova,

O shell mostra que há sempre uma forma melhor, mais rápida e mais elegante de fazer a mesma coisa... Vocês provam isso o tempo todo!

Obrigado mais uma vez!

Em qui., 22 de out. de 2020 às 11:47, Alfredo Casanova <atcasanova@gmail.com> escreveu:
George, só de sacanagem, fiz essa "divisão" de outro jeito aqui

No exemplo que você mandou a taxa de upload é 62330128.67269893

e você quer esse valor dividido por 1.000.000

então:

echo "62330128.67269893" | cut -f1 -d. | rev  | sed 's/\(......\)/\1\./g' | rev

o cut -f1 -d. seleciona o primeiro campo da string usando o caractere "." como delimitador, sobrando apenas: 
62330128

o rev inverte a string
82103326

o sed 's/\(......\)/\1\./g' insere um ponto após 6 caracteres da string acima
821033.26

e o rev inverte novamente:
62.330128

o resultado bate:

echo "62330128.67269893/1000000"|bc -l
62.33012867269893000000



On Thu, Oct 22, 2020 at 11:29 AM George Robinson <george.robinson.br@gmail.com> wrote:
Casanova,

Ficou perfeito!

./speedtest-cli --json | jq -r '"\(.client.ip),\(.client.isp),\(.download),\(.upload),\(.server.latency)"' | while IFS=, read ip isp down up latency; do down=$(echo "scale=2; $down/1000000" | bc) && up=$(echo "scale=2; $up/1000000" | bc) && latency=$(echo "scale=2; $latency/1000000" | bc) && curl -X POST https://speedtest.com/api/registra_test? -d "username=$USERNAME&computername=$HOSTNAME&latency=$latency&externalip=$ip&isp=$isp&download=$down&upload=$up" ; done

@Alfredo


@Filipi

Vocês são grandes e generosos!! E muitos outros dessa lista!

Muito obrigado!

Em qui., 22 de out. de 2020 às 10:35, Alfredo Casanova <atcasanova@gmail.com> escreveu:
Você teria que sobrescrever essas variáveis. Para fazer essa mudança no shell, vc tem várias opções. O próprio bc que você utilizou, ou a simples calculadora do shell se você estiver disposto a trabalhar apenas com inteiros:
 echo $(($down/100000))

ou um aplicativo chamado numfmt:

$ numfmt --to=iec 1024
1.0K
$ numfmt --to=iec 2048
2.0K
$ numfmt --to=iec 20480
20K
$ numfmt --to=iec 204800
200K
$ numfmt --to=iec 2048000
2.0M

Depois de escolher sua opção, você teria que sobrescrever a variável. No seu caso você apenas mandou imprimi-las:

echo "$down / 1000000" | bc | LC_ALL=C xargs /usr/bin/printf "%.*f\n" "$p"

você teria que fazer o seguinte:
down=$(echo "scale=2; $down/1000000" | bc)
up=$(echo "scale=2; $up/1000000" | bc)
e depois enviar o post


On Thu, Oct 22, 2020 at 7:49 AM George Robinson <george.robinson.br@gmail.com> wrote:
Bom dia Lista!

Eu consegui criar uma saída usando o echo para arrendondar os valores de upload e download na saída do comando:

./speedtest-cli --json | jq -r '"\(.client.ip),\(.client.isp),\(.download),\(.upload),\(.server.latency)"' | while IFS=, read ip isp down up latency; do echo "$down / 1000000" | bc | LC_ALL=C xargs /usr/bin/printf "%.*f\n" "$p" && echo "$up/1000000" | bc | LC_ALL=C xargs /usr/bin/printf "%.*f\n" "$p" && curl -X POST https://speedtest.useblu.com.br/api/registra_test? -d "username=$USERNAME&computername=$HOSTNAME&latency=$latency&externalip=$ip&isp=$isp&download=$down&upload=$up" ; done
71
66


Porém, eu ainda não consigo pegar esses valores e usá-los no método POST. No momento eles só aparecem por conta do echo. Alguém poderia me ajudar com isso?

Obrigado!


Em qua., 21 de out. de 2020 às 20:53, George Robinson <george.robinson.br@gmail.com> escreveu:
Digo,

Usando o bc... desculpe o erro... wc é para outra finalidade!

Em qua., 21 de out. de 2020 às 20:48, George Robinson <george.robinson.br@gmail.com> escreveu:
Casanova,

Ficou perfeito!! Era isso que eu queria!!!

Desculpe abusar da boa vontade de vcs, mas existiria algum meio de converter a taxa de upload e download na mesma linha, sem eu precisar criar um novo recurso para converter, usando wc por exemplo?

Atenciosamente

Em qua., 21 de out. de 2020 às 20:15, Alfredo Casanova <atcasanova@gmail.com> escreveu:
Isso não vai funcionar porque o primeiro pipe pega a saída do comando speedtest-cli e filtra o campo .client.isp 
a partir daí, o texto que vai para o proximo pipe é apenas a resposta do anterior, no caso, "Predlink Rede de Telecomuniccoes Ltda". Então um novo jq aí não faria sentido, pois não se trata mais de um json. Você deve aplicar o filtro no json todo.

On Wed, Oct 21, 2020 at 7:47 PM George Robinson <george.robinson.br@gmail.com> wrote:
Exemplificando:

bluehat@debian001:~/Downloads$ ./speedtest-cli --json | jq ."client".isp | jq ."server".latency
jq: error (at <stdin>:1): Cannot index string with string "server"

Em qua., 21 de out. de 2020 às 19:45, George Robinson <george.robinson.br@gmail.com> escreveu:
Olá Filipi,

Grande dica!

Mas como eu faria se eu quisesse extrair em real-time todos aquelas informações que marquei em amarelo? Tentei rodar uma sequencia de pipes e ele o shell não aceitou o argumento...

Atenciosamente

Em qua., 21 de out. de 2020 às 19:29, Filipi Souza <filipi_saci@hotmail.com> escreveu:
Boa noite George.

Se você vai trabalhar com o JSON, utilize o jq para este trabalho.

Segue um exemplo, para pegar a latência:

Para ler de um arquivo:
#
jq ."server".latency speed.json

Para ler da entrada padrão através o pipe:
# cat speed.json | jq ."server".latency


Em qua., 21 de out. de 2020 às 18:54, George Robinson <george.robinson.br@gmail.com> escreveu:
Pessoal,

Só mais uma coisa... eu notei que se eu pedir a saída em JSON, eu tenho acesso a mais informações que na saída CSV estão omitidas. Por exemplo:

./speedtest.cli --json , temos o seguinte output

./speedtest-cli --json
{"client": {"rating": "0", "loggedin": "0", "isprating": "3.7", "ispdlavg": "0", "ip": "177.12.43.76", "isp": "Predlink Rede de Telecomuniccoes Ltda", "lon": "-43.1054", "ispulavg": "0", "country": "BR", "lat": "-22.8896"}, "bytes_sent": 83558400, "download": 62041695.373386584, "timestamp": "2020-10-21T21:37:17.054895Z", "share": null, "bytes_received": 77678956, "ping": 17.5, "upload": 66712941.14054087, "server": {"latency": 17.5, "name": "S\u00e3o Paulo", "url": "http://spd5.claro.com.br:8080/speedtest/upload.php", "country": "Brazil", "lon": "-46.6167", "cc": "BR", "host": "spd5.claro.com.br:8080", "sponsor": "Claro Movel SP1", "lat": "-23.5000", "id": "18103", "d": 365.2307647030463}}

E por exemplo, as informações marcadas em amarelo são as seguintes:

IP EXTERNO
PROVEDOR
TAXA DE DOWNLOAD (SEM CONVERSÃO)
TAXA DE UPLOAD (SEM CONVERSÃO)
LATENCIA

percebo que esses resultados são os mais precisos para o que eu estou fazendo. Como eu poderia buscar apenas esses campos nessa linha inteira de saída?

Pensei em uma expressão regular que capturasse qualquer valor após os seguintes nomes,

"ip":
"isp":
"download":
"upload":
"latency":

Seria por aí?

Atenciosamente


Em qua., 21 de out. de 2020 às 17:55, George Robinson <george.robinson.br@gmail.com> escreveu:
Julio,

Eu sou seu fã, comprei seu livros, vejo seus videos, mas realmente, eu passei um bom tempo congelado, e a necessidade me empurrou de volta para o shell. 

Como vc disse acima, não há nenhuma outra linguagem que consiga fazer o que foi feito dessa forma que o Casanova respondeu. É incrível... uma linha resolveu 2 semanas de pesquisas.

O mundo não pode esquecer do shell e nem vai!!!

Em qua., 21 de out. de 2020 às 17:52, Julio C. Neves <julio.neves@gmail.com> escreveu:









Em qua., 21 de out. de 2020 às 17:31, George Robinson <george.robinson.br@gmail.com> escreveu:
Alfredo,

Muitíssimo obrigado!!! 

Shell Script faz tudo...
Eu estava quase mexendo no script python pra ele entregar essa saída pra mim... minha linha ficou assim:


./speedtest-cli --csv >> speedtest.txt (para criar o arquivo a ser lido)

at speedtest.txt | sed '1d' | while IFS=, read serverId Sponsor ServerName Timestamp Distance Ping Download Upload Share IpAddress; do curl -X POST https://meuhost.com.br/api/registra_test? -d "username=$serverId&computername=$serverId&latency=$serverId&resultsurl=$serverId&jitter=$serverId&usedserver=$serverId&externalip=$serverId&isp=$serverId&packetloss=$serverId&download=$serverId&upload=$serverId" ; done

Usei a mesma variável para todas as saídas para testes... e funcionou... agora eu tenho todas as linhas montadas com o mesmo campo... como eu gostaria de fazer!!!

Vocês são os melhores!

Um abraço!!
Vc disse: O Shell script faz tudo... e eu complemento:
E tudo de forma muito simples e concisa. Pela sua pergunta me pareceu que Shell não é muito a sua praia, mas deveria ser pq se vc consultar o histórico dessa lista, verá que mais de 90% da perguntas - sobre os mais variados temas - têm respostas simples e precisas, com no máximo 3 linhas de código, como essa que o Casanova te mandou.

Ele gravou um arquivo sem ao menos dar um open (ou fopen), com um simples cmd read ele leu diversos campos separados por vírgula (mas poderia ser qq separador ou até diversos) para várias variáveis!!! Não conheço nenhuma linguagem que faça isso. Vc conhece?

Me desculpe me meter onde não fui chamado, mas gosto muito dessa linguagem e depois que criaram a interface gráfica ela passou a ser ignorada por todos, pensando que o mouse iria resolver tudo, Mas isso é um engano... o mouse não conhee quase nada, quem conhece é o Shell.

Dou a maior força para vc aprender Shell, ele é muito fácil vai te quebrar diversos galhos e até mesmo troncos... ;) 

Abraços,
Julio


» Não tem tempo para fazer um curso presencial?
» Na sua cidade não tem nenhum bom curso de Linux?

Também damos treinamento em sua empresa
em qualquer cidadecom certificado e nota fiscal.
 

Em qua., 21 de out. de 2020 às 16:02, Alfredo Casanova <atcasanova@gmail.com> escreveu:
basicamente vc vai fazer o seguinte:


speedtest-cli --csv | 
sed '1d' | while IFS=, read serverId Sponsor ServerName Timestamp Distance Ping Download Upload Share IpAddress; do
curl -X POST http://host/ -d "servidor=$serverId&sponsor=$Sponsor&servername=$ServerName..." etc
done

O primeiro pipe, sed '1d', vai pegar a saída do seu script speedtest-cli e deletar a primeira linha, de cabeçalhos. e vai jogar o resultado para um while que lê as variáveis separadas por vírgula direto do stdout. Assim, o basta montar a string que você quer mandar. Depende do que a API de destino pede, se for json vc vai ter que formatar de forma diferente. Mas o esqueleto é esse.

On Wed, Oct 21, 2020 at 3:48 PM George Robinson <george.robinson.br@gmail.com> wrote:
Prezados Gurus do Shell,

Eu estou tentando aproveitar dados de um script de teste de velocidade escrito em python para que eu possa executar testes de forma repetitiva de hora em hora meu computador e enviá-las para uma api e assim guardar o histórico das execuções nela.

Basicamente, o que eu tenho é um script python que faz todo o trabalho, porém, eu gostaria de pegar algumas informaçoes e colocar em um arquivo .txt e assim, enviar para essa uma api.

Pra não criar um e-mail enorme, vou colocar aqui as saída que são permitidas no script feito em python: 

speedtest-cli --csv (resultado bruto, sem conversão, com as seguintes saídas:
Server ID,Sponsor,Server Name,Timestamp,Distance,Ping,Download,Upload,Share,IP Address
36478,Conecta Minas,Mariana,2020-10-21T18:44:07.003643Z,282.5073807220728,25.783,52089821.8528104,62330128.67269893,,177.12.43.76


Dessas informações, eu gostaria apenas de criar um arquivo .txt contendo Server Name, Timestamp, Ping, Download, Upload e com isso, enviar para a minha URL.

Portanto, o que busco é a partir da execução de um script python, utilizar shell script para um método POST em uma API.

Se alguém puder me ajudar, eu agradeceria muito.

--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
[]'s
Alfredo Tristão Casanova .͘.
Linux User #228230
tel: +55 61 9655 9619
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
[]'s
Alfredo Tristão Casanova .͘.
Linux User #228230
tel: +55 61 9655 9619
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
[]'s
Alfredo Tristão Casanova .͘.
Linux User #228230
tel: +55 61 9655 9619
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
[]'s
Alfredo Tristão Casanova .͘.
Linux User #228230
tel: +55 61 9655 9619
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138


--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]