Ayuda con script en bash

Iniciado por Fastolfe, 5 Mayo 2011, 16:21 PM

0 Miembros y 1 Visitante están viendo este tema.

Fastolfe

Buenas!!

Hace algún tiempo me hice un pequeño script para hacer diversos tipos de escaneos de forma automática, funcionaba perfectamente. Pero hoy me he propuesto mejorarlo ligeramente. Lo que hacía el primer script es lo siguiente:

Pedia un nombre de archivo, una IP y hacía varios escaneos sobre la ip. Usando la opción -o del nmap guardaba los resultados de los escaneos con el nombre de archivo que se le daba. Eso funcionaba bien.
Ahora lo que intento es que después de efectuar los escaneos te de la opción de verlos directamente, sin tener que abrir la carpeta en la que se guardan ni nada. Lo que he hecho ha sido añadir esto:

Código (bash) [Seleccionar]

read hal

if ["$hal" = "y"]; then
gedit "$name-sT"
fi



Como no tengo mucha idea de bash he copiado el if de un tutorial y he cambiado la expresión a evaluar. Alguien me puede decir donde está el error??

Muchas gracias de antemano!!

Fastolfe

He encontrado el fallo después de mirar varias páginas sobre bash... es el ";" que hay antes del then... en el tutorial estaba ahí, pero en la 5º o 6º página que he mirado me he dado cuenta de que no estaba y he probado a quitarlo. Sin él el programa funciona perfectamente.  :D

Gracias a quienes le hayais hechado un vistazo al post y perdón si habeis perdido tiempo buscando el fallo...

JuszR

El ";" no es un error, te permite poner mas comandos en la misma linea.
Me parece que el error es aca:

Código (bash) [Seleccionar]
gedit "${name}-sT"
- No programming language is perfect. There is not even a single best language; there are only languages well suited or perhaps poorly suited for particular purposes. [Herbert Mayer]