[ Foro de C ]

Traduccion Bash->C

01-Jul-2006 18:47
Javier Hernández
5 Respuestas

Necesito este código de shell Bash en C y no tengo ni idea de como traducirlo

if [ "$(links2 -source $m | grep -o in -c)" != "0" ]

Por cierto debe de compilarse para Windows (así que tengo menos idea aún)

Ayuda por favor.

02-Jul-2006 00:18
Eladio San Román Sevillano

Ya te contesté por yahoo. Lo siento amigo, no tengo ni idea. Ya me gustaría ayudarte. Espero que sea pronto.
Un abrazo.

04-Jul-2006 16:38
Nacho Cabanes (+83)

Seamos serios...  ;-)

Si quieres que las cosas funcionen, no debería tratarse de "convertir de bash a C", porque cada uno tiene sus peculiaridades, sus puntos fuertes y sus puntos débiles.

Mejor plantéatelo como "problema a resolver con C", di cual es el pseudocódigo de lo que pretendes conseguir, y entonces será mucho más fácil  ;-)

Más detalles, para que se entienda a qué me refiero: esa orden no es "sólo bash", sino que se apoya en la utilidad "grep", que no es parte de "bash" y que por supuesto no existe en C como tal.

N.


05-Jul-2006 01:49
Javier Hernández

La cosa está en que es un script bastante complejo que me han pedido que lo pase para que se pueda ejecutar en Windows y ni corto ni perezoso pensé pues en C.

El grep ya se que C no puede hacerlo pero con un system no se podria o Windows no sabe hacer cosas así??. Por si alguien se atreve a "convertirlo" en C dejo aquí el script.

----------------------------------------------------------------------------------------------

#!/bin/bash

echo "Link Vision general: ";
read l;
echo "Link Mensajes: ";
read m;
echo " ";

while [ 1 ]; do

if [ "$(links2 -source $m | grep -o in -c)" != "0" ]
then
echo "Conectado correctamente: $(date)";
fi

sleep $((20+$(($RANDOM/1000))));

if [ "$(links2 -source $l | grep -o "flight attack" -c)" != "0" ]
then
echo "ATAQUERR!!";
#AQUI VA LO QUE QUIERES QUE HAGA EL SCRIPT CUANDO TE ESTEN ATACANDO

echo "Ataque!!";

nc -vv smtp.interlap.com.ar 25 << EOF
EHLO mail.interlap.com.ar
AUTH LOGIN
MI_LOGIN_ENCRIPTADO
MI_CONTRASEÑA_ENCRIPTADA
MAIL FROM: hakais@interlap.com.ar
RCPT TO: mi_número_telefono@amena.com
DATA
ogame
.
QUIT
EOF
sleep 100;
fi

sleep $((70+$(($RANDOM/1000))));
echo ".";

done

-----------------------------------------------------------------------------------------

La cosa tiene su historia, es un script que te avisa enviandote un sms al movil de que te están atacando en el juego Ogame (hay gente que se dedica a calentarse la cabeza).

Lo que se dice pseudocódigo no lo tengo hecho, una idea en la cabeza y ya esta ^^

Un saludete.

P.D.: Que tal por Alemania Nacho??

06-Jul-2006 17:24
Diego Teruel

Eres un viciao al OGame tio. Tu te crees que C va a ser capaz de hacer eso que dice el script?Yo tengo mis duda, porque que te envie un sms al movil... no se yo...
Weno si consigues pasarlo al C ya vas sobrao en programacion xD

Saludos


18-Jul-2006 14:18
Nacho Cabanes (+83)

Es lo que me temía. Lo importante no es que esté hecho con un script: se podría hacer lo mismo con C... pero desde Linux.

Si lo quisieras portar a Windows, necesitarías todo lo que no es estrictamente script, como:
- La orden "grep" (existen versiones portadas a Windows)
- La orden "sleep" (fácil de hacer en C, no es problema)
- La orden "links2" (que supongo que será parte del juego ogame)
- La orden "nc" o la que quieras usar para enviar el SMS (¿servicios gratuitos de ese tipo en Windows?)
- ...

Así que la pregunta es... ¿merece la pena el esfuerzo?  Vamos, hablando ya para informáticos profesionales, que sereis dentro de poco: ¿tiempo estimado para encontrar/crear las utilidades complementarias necesarias?  ¿dinero que se va a recibir?   ¿resultado en €/hora? (porque no sólo de satisfacciones personales vive el informático... y menos con los precios que están alcanzando los pisos en España...)







(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)