Programação de Scripts - Atividade 13

Leia com atenção as instruções abaixo.

Preparação do Repositório.

Crie um repositório privado no GitHub. Repositórios públicos levarão nota zero automaticamente. Se seu nome for José Carlos Silva, o repositório deve ter o nome josecarlosscripts20202. Primeiro e segundo nome, sufixo scripts20202, tudo minúsculo. É nele que devem ser colocados os arquivos. Convide o professor (jmarcelo.alencar@gmail.com) para ser colaborador do repositório. Faz parte da avaliação utilizar o GitHub de forma correta.

Dentro do repositório crie uma pasta chamada atividades. Dentro desta pasta você colocará os arquivos de cada atividade. Por exemplo, os arquivos da Atividade 01 devem estar na pasta atividades/atividade01.

Formato da Entrega:

Valor: 1,0 ponto na 2ª Nota.

Data da Entrega Limite: 24/02/2021

Coloque os arquivos na pasta atividades/atividade13.

Questão 01 - 0,5 Ponto

Faça um script chamado marajas.awk que dado um arquivo de salários no formato abaixo imprima os professores que mais ganham por curso.

NOME        CURSO       SALARIO
Jeandro     Redes       10000
Elvis       Engenharia  11000
Hélder      Engenharia  15000
João        Redes       1000
Michel      Redes       800
Jefferson   Sistemas    5000
Márcio      Sistemas    6000
Marcos      Redes       11000                          
                        

A saída deve ser no formato:

 $ awk -f marajas.awk professores.txt
 Engenharia: Elvis,   11000
 Redes:      Marcos,  11000
 Sistemas:   Márcio,  6000                        
                        

Questão 02 - 0,5 Ponto

Considere o arquivo /home/compartilhado/lambda.log. Trata-se de um registro de execução de uma função na plataforma AWS. A execução de uma função pode ocorre com sucesso ou falhar.

Uma execução com sucesso insere linhas no modelo abaixo no registro:

 XRAY TraceId: 1-602d4c44-212437c0639e862302a3c010       SegmentId: 5ccd0b1c5ff1e6f4     Sampled: true
 2021/02/17/[$LATEST]f1a8e33297314749b11ad44e9df5a196 2021-02-17T17:03:03.326000 START RequestId: f5e2505c-577a-4e83-af25-4b60b0912378 Version: $LATEST
 2021/02/17/[$LATEST]f1a8e33297314749b11ad44e9df5a196 2021-02-17T17:03:03.726000 2021/02/17 17:03:03 Elapsed: 340.904801ms
 2021/02/17/[$LATEST]f1a8e33297314749b11ad44e9df5a196 2021-02-17T17:03:03.765000 END RequestId: f5e2505c-577a-4e83-af25-4b60b0912378
 2021/02/17/[$LATEST]f1a8e33297314749b11ad44e9df5a196 2021-02-17T17:03:03.765000 REPORT RequestId: f5e2505c-577a-4e83-af25-4b60b0912378  Duration: 435.94 ms     Billed Duration: 436 ms Memory Size: 128 MB     Max Memory Used: 42 MB                      
                        

Nesta entrada, temos o ínicio e o fim da execução, com o campo Duration da última linha indicando a duração da execução.

Uma execução com fracasso insere a seguinte linha no modelo:

2021/02/17/[$LATEST]f1a8e33297314749b11ad44e9df5a196 2021-02-17T17:02:54.644000 2021-02-17T17:02:54.628Z bf2794ae-c2a4-4c58-b597-a560c06ff2d2 Task timed out after 5.00 seconds                        
                        

Faça um script chamado lambda.awk que imprima um relatório com as seguintes informações: