Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: asdexiva en 1 Febrero 2013, 18:01 pm



Título: cambiando propiedades
Publicado por: asdexiva en 1 Febrero 2013, 18:01 pm
tengo una duda en este codigo  por @echo en todas las lineas ?¿ que no se puede hacer con puros echos ?
Código
  1. @echo off
  2. title Memoria Flash .
  3. color 1E
  4. @echo ----------------------------------------------
  5. @echo ---- REPARACION DE FICHERO ----
  6. @echo ----------------------------------------------
  7. @echo Status : Cambiando Atributo de Carpetas
  8. Attrib /d /s -r -h -s *.*
  9. @echo ----------------------------------------------
  10. @echo Status : Eliminado Accesos Directos
  11. if exist *.lnk del *.lnk
  12. @echo ----------------------------------------------
  13. @echo Status : Eliminado Autorun
  14. if exist autorun.inf del autorun.inf
  15. @echo ----------------------------------------------
  16. @echo Status : Cambiando propiedades
  17. attrib -a -s -h -r /s /d
  18. @echo ----------------------------------------------
  19. @echo Status : Operacion Terminada
  20. @echo ----------------------------------------------
  21. @echo ----------------------------------------------
  22. @echo TERMINADO
  23. @echo ----------------------------------------------
  24. @echo ----------------------------------------------
  25. @echo By sfl



Título: Re: cambiando propiedades
Publicado por: Eleкtro en 1 Febrero 2013, 20:40 pm
Citar
¿ que no se puede hacer con puros echos ?

Claro que se puede, de hecho todas las arroba "@" sobran en ese código, porque las está usando sin darle ninguna utilidad (menos la del @echo off),
Quizás es por una simple cuestión de gustos, o quizás quien haya codeado ese script no entiende mucho de lo que se hace ...

Tutorial extendido de aprendizaje Batch
3.3 El Silencio (http://foro.elhacker.net/scripting/tema_bloqueado_hasta_finalizar_el_tuto_tutorial_extendido_de_aprendizaje_batch-t375135.0.html;msg1797919#msg1797919)



Citar
  • 3.3 El Silencio

La CMD siempre se encargará de mostrar todas las líneas que se van procesando de un script (resulta muy molesto), a menos que le indiques que no quieres que te informe de esos datos.

La "voz" de la CMD se puede activar/desactivar usando el parámetro ON y OFF comando Echo:
Código:
Echo OFF
Código:
Echo ON

Como norma general en la primera línea de nuestros scripts siempre usaremos ese comando para desactivar "la voz", aunque en un script le tendremos que añadir el caracter @ así:
Código:
@Echo OFF

Esa sí que será nuestra primera línea del script !!

NOTA: El caracter  @ indica que el comando que le prosigue a la derecha de él no devuelva "el echo", así que cualquier línea que empiece con el caracter @ no devolverá "la voz" de la CMD.

NOTA: Por defecto Echo siempre está activado (ON)

Algunos comandos también nos dirán cosas innecesarias, para silenciar el echo (o salida) de un comando utilizaremos el operador de redirección >, así:
Código:
Comando >NUL

(http://img208.imageshack.us/img208/5784/captura1t.png)

PD: Más tarde aprenderemos a redireccionar y aprenderemos que es "NUL".

Un saludo.