banner tras comando de dos

Iniciado por mallory, 15 Octubre 2010, 08:28 AM

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

mallory

Hola a todos,

¿Sabe alguien como introducir un banner tras un comando de msdos?

Es decir;

Tras ejecutar
ipconfig

Que en la respuesta que da el sistema aparezca por ejemplo;

Adaptador Ethernet Conexión de área local 2          :

        Sufijo de conexión específica DNS :
        Dirección IP. . . . . . . . . . . :
        Máscara de subred . . . . . . . . :
        Puerta de enlace predeterminada   :

[Ordenador de Manolito]


Un saludo

Shell Root

Código (perl) [Seleccionar]
#!/usr/bin/perl
# @PoC System command

sub _execCommand{
   my $sCommand = shift;

   foreach (qx($sCommand)) {
       $sReturn = $_;
   }
   return $sReturn;
}

system("ifconfig wlan0");
print "Ordernador de: " . &_execCommand("whoami");


Resultado,
Código (PoC) [Seleccionar]
wlan0     Link encap:Ethernet  direcciónHW 00:21:00:bc:fc:20  
         Direc. inet:192.168.0.101  Difus.:192.168.0.255  Másc:255.255.255.0
         Dirección inet6: fe80::221:ff:febc:fc20/64 Alcance:Enlace
         ACTIVO DIFUSIÓN FUNCIONANDO MULTICAST  MTU:1500  Métrica:1
         Paquetes RX:698 errores:0 perdidos:0 overruns:0 frame:0
         Paquetes TX:18 errores:0 perdidos:0 overruns:0 carrier:0
         colisiones:0 long.colaTX:1000
         Bytes RX:230052 (230.0 KB)  TX bytes:3941 (3.9 KB)

Ordernador de: shellroot
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

mallory

Ok, gracias por responder, pero ¿como puedo integrar eso para todos los comandos de msdos?


Es decir es una especie de marca de agua, para que aparezca bien si hago un ping un tacert, un ipconfig ... simplemente entrar en dos y tras ejecutar cualquier comando antes del nuevo prompt recibir [ordenador de manolito]


Gracias

Shell Root

Código (perl) [Seleccionar]
sub _execCommand{
   my $sCommand = shift;

   foreach (qx($sCommand)) {$sReturn .= $_;}
   foreach (qx("whoami")) {$sReturn .= "\nOrdernado de: " . $_;}
   return $sReturn;
}

print _execCommand("ifconfig wlan0");


Resultado,
Código (PoC) [Seleccionar]
shellroot@alex-laptop:~/Escritorio$ perl PoC.pl
wlan0     Link encap:Ethernet  direcciónHW 00:21:00:bc:fc:20  
         Direc. inet:192.168.0.101  Difus.:192.168.0.255  Másc:255.255.255.0
         Dirección inet6: fe80::221:ff:febc:fc20/64 Alcance:Enlace
         ACTIVO DIFUSIÓN FUNCIONANDO MULTICAST  MTU:1500  Métrica:1
         Paquetes RX:3990 errores:0 perdidos:0 overruns:0 frame:0
         Paquetes TX:85 errores:0 perdidos:0 overruns:0 carrier:0
         colisiones:0 long.colaTX:1000
         Bytes RX:1311831 (1.3 MB)  TX bytes:15146 (15.1 KB)

Ordernado de: shellroot


No se mucho PERL, pero así funciona. XD
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

leogtz

Eso lo puedes hacer con el comando FOR, parámetro /f. Si quieres que el mensaje esté entre la salida del comando puedes usar un contadosp ara saber donde insertarlo.
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

mallory

Hola,


Pero donde introduzco el codigo para que por defecto pueda abrir msdos y tras ejecutar cualquier comando (ping, tracert ...) aparezca dicho banner?

mallory

He encontrado la solución,

mediante el comando prompt puedo personalizar el cmd


de tal manera que estableciendo un variable de entorno de las propiedades de sistema como sigue se soluciona el problema.

Prompt           [Ordenador de Manolito]$_$P$G

A mi me ha valido,

Saludos