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

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

Questão de BashScript


From: Tiago Barcellos Peczenyj
Subject: Questão de BashScript
Date: Fri, 13 Jan 2006 16:02:17 -0200

Ola,

para um recente treinamento, formulei esta questão - ao meu ver bem
interessante. Qual a minha surpresa ao ver que ninguem a respondeu -
nem ao menos tentaram.

Gostaria do feedback de vcs, está REALMENTE complicada ? Me sinto mal
com esta situação, eu apenas gostaria de ver alguns dos meus alunos
tentando responder, mesmo q errassem

Questão número 2)
Suponha um arquivo de resultados neste formato:
Device:STARDUST
Date:20051012
Version:0.3.2.1.44.5
OS:HP-UX
Test 01 OK
Test 02 OK
Test 03 OK
Test 04 OK
Test 05 OK
Test 06 Fail
Test 07 OK
Test 08 OK
Test 09 Fail - Warning
Test 10 OK
Test 11 OK
Test 99 Fail

Este arquivo é gerado por algum aplicativo de testes. É necessário
converter este dado arquivo para um REPORT no formato:

STARDUST;20051012;0.3.2.1.44.5;HP-UX;
Total OK: 9
Total Fail: 3
Total Warning: 1

Para isto, temos este pequeno script:

#!/bin/bash
[ "$1" ] || { echo "Uso: $0 arquivo" ; exit 1 ; }
file=$1
egrep '(Device|Date|Version|OS)' ${file} | cut -d':' -f2 | tr '\n' ';'
echo
for i in OK Fail Warning; do
echo "Total ${i}: $(grep -c $i ${file})"
done

Perguntas (responda em alto nível com exemplos em BASH):
a)      Como executar este script para TODOS os arquivos de resultado
existentes em um dado diretório e gerar um REPORT com todos os
resultados – um após o outro ?
b)      Como encontrar, dentro desse diretório, qual a versão (ou versões)
com o maior número de resultados 'OK' ?
c)      Como vc poderia executar o script que gera o REPORT, ignorando as
mensagens de erro que são escritas na STDERR ?

--
------------------------------
Tiago B Peczenyj
Linux User #405772

reply via email to

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