Título: como silenciar un comando buchon? Publicado por: bITEBUG en 5 Junio 2011, 02:38 am ejemplos:
un set /a al que le faltan operandos un if de variable no definida fc comp copy sin /y rd /s sin /q etc. los primeros casos son justificados porque pueden deberse a errores(animaladas) propios pero otros a pesar de utiles son buchones de vocacion. Título: Re: como silenciar un comando buchon? Publicado por: SuperDraco en 5 Junio 2011, 04:47 am puedes explicarte mejor?
No entiendo ¿Silenciar? Ni ¿buchon? ¿Lo que quieres es que al escribir los comandos no aparezca nada en pantalla? Código: set /a variable >nul 2>&1 Resumiendo: >nul 2>&1 EDITO: bueno la verdad es que en algunos comandos no es necesario redireccionar como te he dicho, con el copy puedes usar un simple ">nul" y ya está. saludosss Título: Re: como silenciar un comando buchon? Publicado por: bITEBUG en 11 Junio 2011, 04:39 am Exacto pitoloko, es verdad pero otros tienen salidas como de segundo orden, como que mas que dirigidas al operador son dirigidas al programador, muchas operaciones con variables te dan este tipo de error:
set /a c:/windows (error de division por cero) y la mejor forma de evitarlo es cersiorarse de que "%var% NEQ 0" Aplicado al caso anterior el cual es muy comun dentro de algunos bucles for cuando no todos los tokens son predecibles seria "if %var% NEQ 0 (set /a %var%)" supongamos que %var% deberia tratarse de un valor hexadecimal para hacerlo sencillo, clausula if no se cumple set no se lee y adios salida de segundo orden. Pero prueben este codigo es bien interesante y sirve para contar lineas: rem line32.bat @echo off if exist 32l del 32l copy %1 "%~n132l">nul echo 32l>>%~n132l echo n>c comp /n=799999999999 %1 %132l<c>32l for /f "skip=2 tokens=5" %%x in (32l) do (echo. echo %%x lineas) del 32l del c esta bueno no? Solo que en este caso en el comando comp no gozamos del beneficio del switch /q que tan gentilmente nos ofrecen copy y rd. por lo cual obtenemos esta salida: "¿Desea comparar más archivos (S/N) ?" antes del resultado final. Decis que si cambio: comp /n=799999999999 %1 %132l<c>32l por comp /n=799999999999 %1 %132l<c>32l>nul 2>&1 la unica salida va a venir del for...do...echo? Título: Re: como silenciar un comando buchon? Publicado por: bITEBUG en 11 Junio 2011, 05:08 am rem line32.bat
@echo off if exist 32l del 32l copy %1 "%~n132l">nul echo 32l>>%~n132l echo n>c comp /n=799999999999 %1 %132l<c>32l 2>&1 del "%~n1"32l for /f "skip=2 tokens=5" %%x in (32l) do if not "%%x"=="(S/N)" echo %%x lineas del 32l del c UNA BELLEZA! gracias de nuevo. EDITO: del 32l>nul Título: Re: como silenciar un comando buchon? Publicado por: SuperDraco en 11 Junio 2011, 05:20 am me alegro q lo hayas resuelto tu mismo xD
Pero ¿porque ese número? ¿Te funciona? el número máximo que yo le puedo asignar son nueve nueves: Código: comp /n=999999999 Título: Re: como silenciar un comando buchon? Publicado por: leogtz en 11 Junio 2011, 07:15 am ¿buchón?
Código: buchón, na. ¿qué te cuesta apegarte a palabras que todos entendamos y no solo los de tu país? Título: Re: como silenciar un comando buchon? Publicado por: bITEBUG en 11 Junio 2011, 08:12 am ¿buchón? Código: buchón, na. ¿qué te cuesta apegarte a palabras que todos entendamos y no solo los de tu país? Definición de Buchón en los diccionarios y glosarios en Dialectos Locales Lunfardo (Argentina) (lunf.) Acusador, delator Confidente o informante de la Policía. Lunfardo : persona delatora. es que decir alcahuete es una palabra mas fuerte, me pareceria bueno que internet se adaptara a los dialectos y las formar de hablar locales para asi integrarlas en una forma de hablar global o propia de internet en vez de tender a la media rasa a travez de la operacion de la resta. Por lo menos entre los hispanoparlantes hay tres o cuatro jergas bastantante populares: el español propio de españa, el mejicano, el argentino y quizas el cubano, personalmente entiendo algo de los cuatro asi que por lo que ves Leo no me apego a ninguno, aunque uso y aplico con mas frecuencia el argentino, quizas daria para otro tema pero es muy tarde para seguir con esto. Si hay manera de cambiar el topic y a ustedes le parece que es necesario lo cambio, porque esto puede resultar intructivo para varios de los que nos agarramos terrible enredo con esto de las entradas y las salidas yo recuerdo que lo ultimo que lei al respecto fue en el sitio de microsoft (mal lugar para empezar) y lo deje por ahi porque aprendi mas en los post de este sitio que en la propia fuente. En cuanto a los terminos tecnicos si algo no se me entiende es porque o los desconozco o los he ido olvidando, sepan disculparme, y... ELSE (IF NOT ERRORLEVEL==1 ECHO N05 3NT3ND3M0S) >N05 3NT3ND3M0S Título: Re: como silenciar un comando buchon? Publicado por: bITEBUG en 11 Junio 2011, 08:43 am me alegro q lo hayas resuelto tu mismo xD Pero ¿porque ese número? ¿Te funciona? el número máximo que yo le puedo asignar son nueve nueves: Código: comp /n=999999999 A ver... ya no me acuerdo bien como di con ese numero, mas que nada por aproximacion y suposicion de que el mayor debia ser multiplo de ocho: C:\Documents and Settings\Arian>comp /n=8000000000000 string string32l Argumento numérico incorrecto : /n=8000000000000 C:\Documents and Settings\Arian>comp /n=799999999999 string string32l Comparando string y string32l... El Archivo1 sólo tiene 1 líneas ¿Desea comparar más archivos (S/N) ?n C:\Documents and Settings\Arian>comp /n=999999999 string string32l Comparando string y string32l... El Archivo1 sólo tiene 1 líneas ¿Desea comparar más archivos (S/N) ?n No, a mi me acepta 1 siete y 11 nueves como maximo. |