Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - 0x0309

#21
en php -> es lo que en java es .

y en pseudocódigo:

<-

es lo que en java es:

=

Nota: en java, no es lo mismo: & que && o | que ||

#22
Scripting / Re: Bug batch.
2 Octubre 2009, 08:30 AM
ah, sobre lo de usar paréntesis o comillas ... sirve para cuando publicas un código en foros que agregan espacios al final de cada línea, entonces evitas que el código produzca resultados erróneos.

Por ejemplo, supongamos que haces un código algo similar a esto:

set /p t=Texto:
set v=%texto%
if "%v%"=="" (echo.Vacio.)

Entonces como un foro o por ejemplo google groups añade un espacio te queda:

set v=%texto%[Espacio]

y cuando haces:

if "%v%"=="" (echo.Vacio.)

se te cierra el archivo por lotes, pues con expansión simple no puedes tener espacios en el texto del if.

Pero todo se evita así:

set "v=%texto%"

aunque haga:

set "v=%texto%"[Espacio]

el espacio o cualquier cosa que venga después de la comilla final es ignorado.



#23
Scripting / Bug batch.
1 Octubre 2009, 08:33 AM
Yo había leído en un sitio que para asignar con el comando set es lo mismo:

set "variable=valor"

que

(set variable=valor)

Sin embargo, he encontrado un bug de cmd.exe.

Cuando cmd.exe reconoce una sola comilla dentro de paréntesis termina el archivo por lotes.

Por eso si se hace:

(")
el archivo por lotes termina.

Por eso si tenemos el siguiene código:

test.cmd
@echo off
(set var=%1)
echo.El texto se muestra.


y ejecutamos:

test.cmd "
el texto no se muestra porque el archivo por lotes concluyó antes por el bug.

Pero si hacemos:

test.cmd

@echo off
set "var=%1"
echo.El texto se muestra.


el texto si es mostrado.

Entonces no es lo mismo:
(set variable=valor)
que contiene el bug.

que:

set "variable=valor"

#24
Scripting / Re: Script para CDIMAGE
1 Octubre 2009, 04:05 AM
cdimage /?
#25
Es porque en el segundo for encerraste entre comillas, por lo que indicas que el nombre del archivo es el texto a procesar y no el contenido del archivo, si lo quieres usar con comillas por ejemplo para trabajar con nombres de archivos que tienen espacio debes añadir useback.

Es decir o cambias:

for /f "tokens=*" %%L in ("%crrFile%") do (

por:

for /f "tokens=*" %%L in (%crrFile%) do (

o:

for /f "usebackq tokens=*" %%L in ("%crrFile%") do (

#26
Scripting / Error reply [batch]
30 Septiembre 2009, 22:28 PM
Hola sin querer creo haber encontrado un problema del comando reply alias keyboard.

keyboard.com
14 bytes
:reply
(
echo.N REPLY.COM;O KEYBOARD.COM
echo.E 0000 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo.R CX
echo.000E
echo.W0
echo.Q
echo.
) | debug


Cuando lo ejecutan con tabla de códigos 1252 sale un mensaje:

chcp 1252
reply.com
3íÆž è®ôè&s       ítè ë Æ"œè sÚëøëù^_ZY[XÃSQRWVœèf ƒ>ð @

        - 1252,


Solución, llamar a reply.com redirigiendo salida a nul:

reply.com > nul

Creo que será necesario siempre redirigir la salida a nul para evitar posibles mensajes. :)

También, si le dan como entrada a reply nul se queda "colgado".


reply.com < nul


Alternativa a reply.com:

getkey.com de Herbert Kleebauer
137 bytes
echo Bj@jzh`0X-`/PPPPPPa(DE(DM(DO(Dh(Ls(Lu(LX(LeZRR]EEEUYRX2Dx=>getkey.com
echo 0DxFP,0Xx.t0P,=XtGsB4o@$?PIyU!WvX0GwUY Wv;ovBX2Gv0ExGIuht6>>getkey.com
echo L?p{KsUWK`LR0x>>getkey.com



#27
Scripting / Re: Leer tecla en batch?
30 Septiembre 2009, 20:34 PM
Aquí tienes otra forma:

rem Code by Herbert Kleebauer.
echo Bj@jzh`0X-`/PPPPPPa(DE(DM(DO(Dh(Ls(Lu(LX(LeZRR]EEEUYRX2Dx=>getkey.com
echo 0DxFP,0Xx.t0P,=XtGsB4o@$?PIyU!WvX0GwUY Wv;ovBX2Gv0ExGIuht6>>getkey.com
echo L?p{KsUWK`LR0x>>getkey.com


Luego:


getkey.com
echo.Valor ascii de la tecla presionada: %errorlevel%

#28
Prueba los siguiente:

al comienzo de tu script escribe:

chcp 1252

y luego usa acentos tal cual:
Por ejemplo
cd configuración

lo otro es que reemplaces cada acento con el carácter comodín ? así como es poco probable que hayan dos carpetas con el mismo nombre con un carácter diferente esto funciona:

cd configuraci?n

#29
Scripting / Respaldo towel.blinkenlights.nl
27 Septiembre 2009, 23:57 PM
Hace tiempo quise hacer esto, y pensé que no se podía, hacer un respaldo de la animación de star wars de towel.blinkenlights.nl

Para verla:
telnet.exe towel.blinkenlights.nl

Yo intentaba hacer:

telnet.exe towel.blinkenlights.nl > respaldo.txt

y no funcionó.

Al final, desistí, pero hoy, leyendo la ayuda del comando telnet.exe me acordé de esto y ya conseguí hacer el respaldo.

Es así:

Código (dos) [Seleccionar]
telnet.exe -f respaldo.txt towel.blinkenlights.nl

De esa forma, todo lo que se ve va quedando en el archivo de texto.

Más o menos queda así:


                                          /~\
                                         |oo )
                                         _\=/_
                         ___            /  _  \
                        / ()\          //|/.\|\\
                      _|_____|_        \\ \_/  ||
                     | | === | |        \|\ /| ||
                     |_|  O  |_|        # _ _/  #
                      ||  O  ||          | | |
                      ||__*__||          | | |
                     |~ \___/ ~|         []|[]
                     /=\ /=\ /=\         | | |
     ________________[_]_[_]_[_]________/_]_[_\_________________________
                                          /~\
                                         |oo )    Did you hear that?
                                         _\=/_
                         ___            /  _  \
                        / ()\          //|/.\|\\
                      _|_____|_        \\ \_/  ||
                     | | === | |        \|\ /| ||
                     |_|  O  |_|        # _ _/ #
                      ||  O  ||          | | |
                      ||__*__||          | | |
                     |~ \___/ ~|         []|[]
                     /=\ /=\ /=\         | | |
     ________________[_]_[_]_[_]________/_]_[_\_________________________
                                          /~\
                                         |oo )
                                         _\=/_
                         ___            /  _  \
                        / ()\          //|/.\|\\
                      _|_____|_        \\ \_/  ||
                     | | === | |        \|\ /| ||
                     |_|  O  |_|        # _ _/ #
                      ||  O  ||          | | |
                      ||__*__||          | | |
                     |~ \___/ ~|         []|[]
                     /=\ /=\ /=\         | | |
     ________________[_]_[_]_[_]________/_]_[_\_________________________
                                          /~\
                                         |oo )
                                         _\=/_
                         ___         #  /  _  \
                        / ()\        \\//|/.\|\\
                      _|_____|_       \/  \_/  ||
                     | | === | |         |\ /| ||
                     |_|  O  |_|         \_ _/ #
                      ||  O  ||          | | |
                      ||__*__||          | | |
                     |~ \___/ ~|         []|[]
                     /=\ /=\ /=\         | | |
     ________________[_]_[_]_[_]________/_]_[_\_________________________
                                          /~\
                                         ( oo|    They've shut down
                                         _\=/_    the main reactor.
                         ___         #  /  _  \
                        / ()\        \\//|/.\|\\
                      _|_____|_       \/  \_/  ||
                     | | === | |         |\ /| ||
                     |_|  O  |_|         \_ _/  #
                      ||  O  ||          | | |
                      ||__*__||          | | |
                     |~ \___/ ~|         []|[]
                     /=\ /=\ /=\         | | |
     ________________[_]_[_]_[_]________/_]_[_\_________________________
                                          /~\
                                         ( oo|    They've shut down
                                         _\=/_    the main reactor.
                         ___         #  /  _  \
                        / ()\        \\//|/.\|\\
                      _|_____|_       \/  \_/  ||
                     | | === | |         |\ /| ||
                     |_|  O  |_|         \_ _/   #
                      ||  O  ||          | | |
                      ||__*__||          | | |
                     |~ \___/ ~|         []|[]
                     /=\ /=\ /=\         | | |
     ________________[_]_[_]_[_]________/_]_[_\_________________________


Sin embargo, esto genera una salida imprimible, para un verdadero respaldo se puede usar el putty y activar en Session -> Logging: All session output.
De esa forma tienen el texto con las secuencias de escape.
Por ejemplo:


                                           /~\                           
                                          |oo )         At last!         
                                          _\=/_                         
                          ___            /  _  \                         
                         / ()\          //|/.\|\\                       
                       _|_____|_       ||  \_/  ||                       
                      | | === | |      || |\ /| ||                       
                      |_|  O  |_|       # \_ _/ #                       
                       ||  O  ||          | | |                         
                       ||__*__||          | | |                         
                      |~ \___/ ~|         []|[]                         
                      /=\ /=\ /=\         | | |                         
      ________________[_]_[_]_[_]________/_]_[_\_________________________

#30
PHP / Ayuda con header [solucionado]
25 Septiembre 2009, 06:49 AM
Hola, tengo un pequeño problema y quisiera pedirles ayuda por favor para solucionarlo.

[ya lo solucioné]

Estoy escribiendo un conversor de archivos en php, para ello ya tengo listo y probado el upload y funciona bien, pero quiero que una vez comprobé que el archivo subido es correcto, proceder a la conversión y que aparezca para descargarlo, de lo contrario que muestre el mensaje de error.

este es un código con la idea, y con el problema.

Código (php) [Seleccionar]

<?php

header
('Content-Type: text/plain');
header('Content-Disposition: attachment; filename=' '"' 'convertido.txt' '"');

?>


<?

$archivoValido = 0;

if ($archivoValido == 1)
{
echo "Esto va dentro del archivo: convertido.txt";
}
else
{
// Que debo hacer para el mensaje de error en la página.?
echo "Error. que esto se muestre en la pagina";
}



?>


edito: al final la solución era usar un solo bloque de código php, y especificar los headers solo en la sección correspondiente. Al final queda así:

Código (php) [Seleccionar]

<?

$archivoValido = 0;

if ($archivoValido == 1)
{
      header('Content-Type: text/plain');
       header('Content-Disposition: attachment; filename=' . '"' . 'convertido.txt' . '"');
echo "Esto va dentro del archivo: convertido.txt";
}
else
{
// Que debo hacer para el mensaje de error en la página.?
echo "Error. que esto se muestre en la pagina";
}



?>