elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  script con ficheros
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: script con ficheros  (Leído 2,200 veces)
andaluz


Desconectado Desconectado

Mensajes: 333



Ver Perfil
script con ficheros
« en: 1 Noviembre 2011, 11:26 am »

Hola a todos, tengo un problemilla con este script, tengo que realizar una quiniela, los problemas que na da son los siguientes:
      1. al comprobar que los 3 ficheros tienen la misma cantidad de elementos, comparo los 2 primeros y me sale bien, pero al meterle el tercero me salta el error, la verdad es que nose porque.
      2. para sacar el nombre del equipo de cada fichero, si no me equivoco lo tendría que realizar con $(head -x | tail -1) pero no consigo realizarlo.

Aqui dejo el codigo que tengo confeccionado, haber si me pueden ayudar.

el enunciado se los he dejado comentado al principio de scirpt, tambien le he comentado algunas lineas para que me ayuden en la depuracion del script.

Código
  1. # Crear un script que dados 3 ficheros: Equipos.txt, Resultados.txt,
  2. # Equipos2.txt, permita generar el fichero Quiniela.txt que contiene las
  3. # lineas de la quiniela formada por los equipos que estan en el fichero
  4. # Equipos1.txt, el resultado del fichero Resultados.txt y los equipos de
  5. # Equipos2.txt. El script debera comprobar que dichos fichreros tienen el
  6. # mismo numero de elementos para que la quiniela se pueda generare
  7. # correctamene.
  8.  
  9. #!/bin/bash
  10. # generamos el fichero quiniela.txt
  11. echo '' >> ./quiniela.txt
  12.  
  13. # comprobar que los 3 ficheros tienen el mismo numero de lineas
  14. eq1=$(cat ./equipos1.txt | wc -l ./equipos1.txt | cut -d " " -f 1)
  15. eq2=$(cat ./equipos2.txt | wc -l ./equipos2.txt | cut -d " " -f 1)
  16. result=$(cat ./resultados.txt | wc -l ./resultados.txt | cut -d " " -f 1)
  17. echo ''
  18. echo 'Equipos1: '$eq1
  19. echo 'Equipos2: '$eq2
  20. echo 'Resultados: '$result
  21. echo ''
  22. cont=0
  23. if $(test $eq1 -eq $eq2) && $(test $eq2 -eq $result)
  24. then
  25. echo 'Empezamos a confeccionar la quiniela...'
  26. for i in $(cat ./equipos1.txt)
  27. do
  28. echo 'equipo1: '$(head $i ./equipos1.txt | tail -1)
  29. #$eq2=$(head $i ./equipos2.txt | tail -1)
  30. #$result=$(head $i ./resultados.txt | tail -1)
  31. # introducimos la linea en el fichero quiniela.txt
  32. #echo '1. '$(head $i ./equipos1.txt | tail -1)' - '$(head $i ./equipos2.txt | tail -1)' '$(head $i ./resultados.txt | tail -1)
  33. # echo '1. ' $(head $1 ./equipos1.txt | tail -1)' - '$(head $j ./equipos2.txt | tail -1)' - '$(head $k ./resultados.txt | tail -1)
  34. #cont=$(expr $cont \+ 1)
  35. done
  36. else
  37. echo 'Los ficheros no tienen los mismos elementos.'
  38. fi
  39.  

Saludos,


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
crear un script con ficheros .bat bajo windows
Scripting
H1@ 9 11,688 Último mensaje 8 Enero 2008, 03:30 am
por H1@
[Batch] Script para mover ficheros segun su fecha de creacion a otra carpeta
Scripting
javor 1 13,435 Último mensaje 19 Febrero 2009, 16:47 pm
por Novlucker
script bash (ubuntu): Parar un proceso sin salir del script (SOLUCIONADO)
Scripting
moikano→@ 6 11,465 Último mensaje 28 Octubre 2010, 15:48 pm
por moikano→@
[Shell Script] ¿Cómo unir lineas de distintos ficheros?
Scripting
‭lipman 3 7,931 Último mensaje 6 Mayo 2011, 23:40 pm
por d00ze13
Script copiar ficheros escritorio
Scripting
Chr0nic 3 3,222 Último mensaje 10 Mayo 2013, 11:25 am
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines