Autor
		 | 
		
			Tema: TUTORIAL PROGRAMACION BAT  (Leído 696,180 veces)
		 | 
	 
 
	
		
			
				
					
						
							soplo
							
								Ex-Staff 
								 
								  Desconectado
								Mensajes: 3.592
								 
								Debian rool'z
								
								
								
								
								
								  
							 
						 | 
						
							
							 
							
Amplío un poco la información anterior con los comandos mas complejos y difíciles de entender:
 
  ------------------------------------------------------------------------------  COMANDO IF  Sirve para hacer bifurcaciones en el código.  Admite 6 sintaxis distintas: 
  IF EXIST nombre_fichero ORDEN  ( si existe nombre_fichero ejecutar la orden especificada en ORDEN) 
  IF NOT EXIST nombre_fichero ORDEN  ( igual, pero si no existe el fichero) 
  IF cadena1 == cadena2 ORDEN  ( si cadena1 es igual a cadenado2 ejecutar la orden especificada en ORDEN) 
  IF NOT cadena1 == cadena2 ORDEN  ( si cadena1 es distinta de cadena2 hacer orden ) 
  IF ERRORLEVEL número ORDEN  ( si el comando anterior acabó con un código de error es igual o superior a número hacer orden ) 
  IF NOT ERRORLEVEL número ORDEN  ( si el comando anterior acabó con un código de error inferior a número ) 
  ----------------------------------------------------------------------------------  COMANDO FOR  Esta orden repite la orden especificada para cada entrada de una lista de ficheros (separados por espacios). En esta lista se pueden emplear comodines. 
  La variable siempre lleva dos veces el signo % 
  FOR %%variable IN lista DO ORDEN 
  Por ejemplo  FOR %%x IN (texto1.txt texto2.txt texto3.txt) do delete %%i  Esta orden haría lo siguiente: repetiría 3 veces la orden delete. En cada vez %%i valdría cada valor de la lista de manera que la primera vez sería texto1.txt, la segunda vez texto2.txt y la tercera vez texto3.txt. 
  Así esta orden haría:  DELETE TEXTO1.TXT  DELETE TEXTO2.TXT  DELETE TEXTO3.TXT 
  ---------------------------------------------------------------------------------  VARIABLES DE ENTORNO  Se pueden declarar variables. 
  SET variable = valor  Declara una variable de tipo string cuyo contenido es valor 
  SET /n variable = valor1 + valor2 + valor3  Declara una variable numérica cuyo contenido es el resultado de la operación. 
  También hay algunas variables que ya vienen declaradas como la variable PATH, OS, por ejemplo. Estas variables que ya vienen declaradas puedes verlas en propiedades de mi pc, avanzado, variables de entorno y están a tu disposición en ficheros por lotes (bat) 
  Para referirte a cualquiera de estas variables las pones entre los signos %  Así para saber saber si tu sistema operativo es win98 haces  IF %os% == WINDOWS98 ECHO ES WINDOWS 98 
  Por último están las variables que utilizas en un for que tienen siempre dos veces el signo % delante. 
  --------------------------------------------------------------------------------  ETIQUETAS 
  Se pueden definir etiquetas que se utilizarán para saltar a ellas cuando se cumpla una condición. Para definir una etiqueta pones una línea que empiece por : y luego el nombre de la etiqueta 
  Por ejemplo  ORDEN 1  ORDEN 2  if %os% == Winnt goto winnt  echo se hace esta línea si no es winnt  goto fin  :winnt  echo se hace esta línea si es winnt el sistema operativo  :fin 
  ----------------------------------------------------------------------------  PARAMETROS REEMPLAZABLES 
  A menudo en este tipo de archivos tu quieres poder pasarle parámetros. Estos parámetros sirven para que el script haga una cosa u otra en función del parámetro que le pasas. Por ejemplo si tienes un archivo bat cuyo nombre es AVERIGUARSISTEMAOPERATIVO.BAT tu puedes hacer lo siguiente:  AVERIGUARSISTEMAOPERATIVO windows98  AVERIGUARSISTEMAOPERATIVO win2000  AVERIGUARSISTEMAOPERATIVO winxp 
  En los tres casos llamas al mismo script AVERIGUARSISTEMAOPERATIVO, pero en cada caso le pasas un parámetro diferente. En el primero le pasas windows98, en el segundo le pasas win2000 y en el tercero le pasas winxp. 
  Para referirte al parámetro en el código debes saber que el sistema les asigna nombre de forma automática. Ál primero le llama %1, al segundo %2, al tercero %3, ..., al mil %1000 
  Así yo podría tener un archivo bat llamado AVERIGUARSISTEMAOPERATIVO.BAT que me confirma si mi sistema operativo es el que yo creo. Su código sería  if %os% == %1 goto correcto  echo El sistema operativo NO es %1  goto fin  :correcto  echo el sistema operativo SI es %1  :fin 
  Suponiendo que mi sistema operativo fuera winxp de los tres casos antes citados, los dos primeros obtendría 'el sistema operativo NO es X (siendo X windows98 o windows2000) 
  En el tercer caso obtendría 'el sistema operativo SI es winxp porque la cadena %os% es igual a la cadena %1. Ambas son winxp 
  
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							Callar es asentir ¡No te dejes llevar! 
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							armonight
							
								Visitante 
								
								
								 
							 
						 | 
						
							
							 
							
hola mi nombre es sebastian amo la programacion  necesito ayuda para crear un archivo bat que elimine
  los archivos temporales de internet - el historial - los archivos de la carpeta temp en conf local -  doc recientes  tengo claro que los nombres que tengan mas de 8 caracteres o espacio debo escribirlos asi  c:\Documents and Settings\Administrador\Config~1
  
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							TaN€R
							
								       
								
								  Desconectado
								Mensajes: 2.599
								
								 
								Amo el foro!
								
								
								
								
								
								  
								 
							 
						 | 
						
							
							 
							
muy bueno soplo,y para los que menos saben , un pequeño apunte,para que lo entiendan mejor,todo.
 
  una variable que es? quieres hacer una agenda de telefonos,por ejemplo.
  pues lo primero es declarar las variables
  ejemplo:  set variable= agenda set agenda=luis,pepe,paco,soplo 
  el if es una "condición",muy usada en programación, en los diferentes lenguajes.Condiciona
  if viene a decir "Si hago esto...
  (Si se cumple una condición hago una determinada cosa).
  Dicen que antes de hacer un programa bat o lo que sea, se debe escribir el pseudocodigo.  pseudocodigo creo que se llama, algo asi como hacer un esquema de lo que vas ha hacer antes de hacerlo,sobre lapiz y papel
  por cierto ¿como se insertaba un comentario que no se muestre?es decir una aclaracion para nosotros mismos, pero que no se vea en el programa,se que con action script  era algo asi  //este es mi comentario y no se mostrará,
  es igual con los bat?
 
  Por cierto soplo estaria muy bien,hacer algun programa los que manejen bien , bien el tema,y postearlo aqui.con sus explicaciones debidas. dar ideas,comentar y participar construyendo nuevos bat prácticos.
  estaria muy bien
 
 
 
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							soplo
							
								Ex-Staff 
								 
								  Desconectado
								Mensajes: 3.592
								 
								Debian rool'z
								
								
								
								
								
								  
							 
						 | 
						
							
							 
							
¿como se insertaba un comentario que no se muestre? REM comentario Por cierto soplo estaria muy bien,hacer algun programa los que manejen bien , bien el tema,y postearlo aqui.con sus explicaciones debidas. dar ideas,comentar y participar construyendo nuevos bat prácticos. No me parece una buena porque la mayoría de los casos en los que se usan estas cosas suelen ser en scripts de inicio para usuarios y perfiles en dominios y por tanto hay se mezclan varias cosas además de complicarse bastante. Creo que esos ejemplos serían ilegibles, porque a menos que te hayas enfrentado con perfiles de usuario y scripts de inicio de sesión en dominios no sabes ni de lo que te hablan y aún así cada caso es diferente. Un saludo  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							Callar es asentir ¡No te dejes llevar! 
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							billyboca
							
								Visitante 
								
								
								 
							 
						 | 
						
							
							 
							
SOPLO!!! solicito tu yuda nuevamente   use el comando XCOPY com ome recomendaste...y todo v muy bien...el unico problema que se me presenta es que luego de copiar los archivos...carpetas...y subcarpetas...cuando entro al explrador de windows....algunas carpetas no las veo...pero si escribo la ruta en la barra de direcciones....las veo perfectamente.... NO ENTIENDO COMO PUEDE PASAR ESO         agradezco tu ayuuda anterior y la que le das a todos   adiooooooossssssssss  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							soplo
							
								Ex-Staff 
								 
								  Desconectado
								Mensajes: 3.592
								 
								Debian rool'z
								
								
								
								
								
								  
							 
						 | 
						
							
							 
							
Eso no tiene que ver con este tema.
  Tu problema es un problema de windows y probablemente se debe a que necesitas hacer scandisk o quizá esas carpetas están marcadas como ocultas.
  Si hiciste como te dije esas carpetas están ahí seguro. Si tienes problemas postea en el foro de windows para que no se nos  lie una cosa con otra.
  Un saludo 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							Callar es asentir ¡No te dejes llevar! 
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							peterax
							
								Visitante 
								
								
								 
							 
						 | 
						
							
							 
							
Hola a todos soy nuevo en este foro y quisiera preguntarles como puedo hacer en mi archivo .bat que me lea de un fichero de configuracion el cual consta por campos o columnas. ejemplo
  pedro      342       caramelo     casa       args
 
  quisiera que me el script me almacenara en 5 variables el contenido de cada campo. Esto lo tendria que hacer para cada registro.
  Espero que me podais ayudar alguno, muchas gracias. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							peterax
							
								Visitante 
								
								
								 
							 
						 | 
						
							
							 
							
Se me olvidaba una duda muy muy importante. Como se puede realizar en msdos un ps o un kill de un proceso???? existe alguna aplicacion que me almacene el resultado en un fichero, a parte de la de Ctr-alt-sup Gracias a todos. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							TaN€R
							
								       
								
								  Desconectado
								Mensajes: 2.599
								
								 
								Amo el foro!
								
								
								
								
								
								  
								 
							 
						 | 
						
							
							 
							
taskill  proceso.exe,  creo Por cierto he aqui una aplicación,para que os limpieis  de ***** el pc.  limpieza de temporales y demas hierbas 
 del "C:\Documents and Settings\aquitumismo\Cookies\index.dat" > NUL del "C:\Documents and Settings\aquitumismo\Configuración local\Archivos temporales de Internet\Content.IE5\index.dat" > NUL del "C:\Documents and Settings\aquitumismo\Configuración local\Historial\History.IE5\index.dat" > NUL
  rd  /s/q "C:\Documents and Settings\aquitumismo\Configuración local\Archivos temporales de Internet\Content.IE5"  > NUL rd  /s/q "C:\Documents and Settings\aquitumismo\Configuración local\Historial\History.IE5" > NUL md   "C:\Documents and Settings\aquitumismo\Configuración local\Archivos temporales de Internet\Content.IE5"  > NUL     
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Última modificación: 20 Agosto 2004, 10:45 am por lüwepr »
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							all
							
								
								  Desconectado
								Mensajes: 48
								
								 
								que hay people
								
								
								
								
								
								  
							 
						 | 
						
							
							 
							
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	 |  
 
	 
	
 
			 
			
				
					
						| Mensajes similares | 
					 
					
						 | 
						Asunto | 
						Iniciado por | 
						Respuestas | 
						Vistas | 
						Último mensaje | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Tutorial: Programación PIC
							 
							Electrónica
						 | 
						
							Fabios Arts
						 | 
						
							2
						 | 
						
							11,284
						 | 
						
							 
							
								 4 Diciembre 2005, 22:23 pm 
								por Fabios Arts
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Tutorial programación BAT
							 
							Scripting
						 | 
						
							soplo
						 | 
						
							4
						 | 
						
							6,386
						 | 
						
							 
							
								22 Julio 2006, 23:38 pm 
								por sirdarckcat
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Video Tutorial Programacion C++
							« 1 2 ... 10 11 » 
							Programación C/C++
						 | 
						
							Chuxxx
						 | 
						
							101
						 | 
						
							111,486
						 | 
						
							 
							
								 2 Agosto 2013, 07:45 am 
								por batist07
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Tutorial de programación con Qt4 - 1º,2º y 3º entrega
							 
							Programación C/C++
						 | 
						
							paju1986
						 | 
						
							1
						 | 
						
							5,750
						 | 
						
							 
							
								25 Diciembre 2010, 21:52 pm 
								por Littlehorse
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Tutorial de programacion en PHP
							 
							Desarrollo Web
						 | 
						
							crazykenny
						 | 
						
							3
						 | 
						
							3,585
						 | 
						
							 
							
								 9 Enero 2013, 00:05 am 
								por EFEX
							
						 | 
					 
				 
			    |