24 dic 2013

Pasar el resultado de un comando a una variable

@echo off
::esto es un comentario y bat no tomara en cuenta
::comando ping que quiero pasar a una variable el resultado
ping -n 1 192.168.1.1>archivo.txt

::leer el archivo linea por linea
for /F "tokens=*" %%X in (archivo.txt) do call :variables "%%X"
goto fin

:variables
set /a contador=contador + 1
::definir que linea pasar a que varible puede añadir cuantos if como variables se necesite
if "%contador%"=="2" set lineaDOS=%~1
if "%contador%"=="4" set lineaCUATRO=%~1
goto:eof

:fin
del /f /q archivo.txt

echo %lineaDOS%
echo %lineaCUATRO%
pause

29 nov 2013

Recuperar el restablecer copia de seguridad de fábrica



Mucha gente perdió el restablecimiento de fábrica al formatear o al eliminar la partición; en el siguiente tutorial vamos aprender a como recuperar una copia de seguridad automáticamente con Norton Ghost y con MS-DOS.

Necesitamos:

  • Windows XP
  • Tener una partición primaria
  • Archivos de MS-DOS
  • Grub4dos
  • Ghost para MS-DOS
  • Archivo winxp.gho creado con norton ghost

Descargar archivos necesarios de aquí
Si no tienes una partición primaria sigue este tutorial

Descomprimir los archivos necesarios en escritorio o donde lo tengáis a mano. Una vez descomprimido copiar el contenido de la carpeta grub en el disco c:\, después abrir el block de notas (inicio>todos los programas>accesorios>bloc de notas) abrimos el archivo c:\boot.ini (en la opción archivos>abrir)

El archivo contiene algo parecido:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

En timeout=30 cambiamos el 30 por el 3 así en 3 segundos iniciara el Windows si no tocamos el teclado.
Al final del archivo añadimos la siguiente  línea:
c:\grldr="Restablecer copia de seguridad"
Guardamos todo.
Para entender el resto de tutorial les dejo una vista lógica de mi disco duro:


P1 es una partición primaria de Windows XP
P2 es una partición extendida lógica de documentos
P3 es la partición primaria de MS-dos

Para arrancar cualquier sistema operativo se necesita una partición primaria por eso he creado una para MS-dos.
Abrimos el archivo menu.lst; este archivo contiene la información necesaria para que arranque MS-dos, este contiene lo siguiente:

timeout 0
title ghost
root (hd0,1)
chainloader (hd0,1)/io.sys

he marcado en negrita lo que se tiene que cambiar si no tiene la misma configuración de mi disco

hd0,0 siguinifica disco en que esta el grub la partición 1
hd0,1 siguinifica disco del grub partición 2
hd0,2 siguinifica disco del grub partición 3
hd1,0 siguinifica un segundo disco partición 1

Puede que os liéis un poco si tenéis la misma configuración que yo pues las particiones primarias en grub4dos se lista primero que las particiones extendidas o lógicas así que la imagen lógica del disco puede confundir de hay que tenga en el archivo menú.lst hd0,1 en ves de  hd0,2


 Si tenéis las mismas particiones que yo o solo 2 particiones una para Windows y documentos y otra para MS-dos dejad el archivo menú.lst como esta


Ahora descomprimes los archivos de MS-dos en la partición creada, con esto ya arrancaría bien MS-dos ahora solo queda crear una copia de seguridad de Windows
Cuando reiniciéis el ordenador elegid la opción  Restablecer copia de seguridad antes de que arranque normalmente Windows saldrá un menú como este

Presionamos la tecla G y saldra una ventana como esta

Seleccionamos local>Partition>to image saldrá una ventana como la siguiente

Seleccionamos el nuestro disco duro luego en la siguiente ventana la partición de Windows

Luego hay que elegir en que partición guardar el archivo y lo guardaremos en la partición copia con el nombre winxp es muy importante que sea ese nombre sino habria que modificar el archivo copia.bat de la partición primaria copia.



Después de dar a Save sale una ventana elegimos Fast luego sale otra ventana elegimos Yes  y con un poco de suerte a esperar un poco; cuando termine apagas o reinicias el ordenador.
 Dejeen vuestros comentarios si os ha servidor o si os ha salido algún error






23 nov 2013

Parametros de norton ghost en Ms-dos

-clone
La opción -clone permite copiar, clonar y restaurar discos y particiones. La sintaxis de la opción clone es la siguiente:
-clone,MODE={funcionamiento},SRC={origen},DST={destino},[SZE{tamaño},SZE{tamaño}.......] {-fcr}
Cada modo puede referirse a un disco o a una partición -lo que se indica con una 'p' inicial-.
● ([p]copy) El modo copia permite duplicar un disco o partición.
● ([p]create = [p]dump) El modo creación realiza una imagen del disco o partición.
● ([p]restore = [p]load) El modo restauración utiliza una imagen para restaurar un disco o partición. 
Las opciones de tamaño pueden indicar que sea igual al origen (E), que se ajuste el tamaño de la primera partición (F) o
de la última (L) o especificarse para cada partición su tamaño en megas o porcentaje, que sea fijo (F) o variable (V).
SZE={E | F | L | n={xxxxM | mmP| F | V}}
Ejemplos
ghost.exe -clone,mode=prestore,src=1:4\imagenes\par-c.gho:1,dst=1:1 -sure
Restaura la partición (mode=prestore) primera (:1) de la imagen “\imagenes\par-c.gho” que reside en la cuarta
partición del primer disco (src=1:4), en la primera partición del primer disco (dst=1:1) sin pedir confirmación (sure).
 ghost.exe -clone,mode=pcreate,src=1:2,dst=1:3\copias\1.gho -SURE -rb
Crea una  copia de seguridad de la partición 2 del disco 1(mode=pcreate,src=1:2)  y guarda como imagen gho en la particion 3 del disco 1 (dst=1:3) en la carpeta (copias) no pide confirmacion (-SURE) y reinicia cuando se acaba (-RB)

7 ago 2010

subir archivos de una carpeta incluyendo sus subcarpetas con ftp batch

  Bien hoy les dejo un codigo que he echo yo mismo no se si en internet ya haya algo parecido pero este es mio. Es muy simples con unos cuantos for y el comando ftp ya esta listo para subir archivos.
   Para subir los archivos solo hace falta arrastrar y soltar la carpeta encima del archivo bat 

@echo off
set serv=nombre de servidor
set usua=nombre de usuario
set cont=contraseña
set carp=carpeta raiz
::tipo de subida binary o ascii
set tipo=binary

%~d1
cd "%~s1"
::config
(
echo %usua%
echo %cont%
echo cd %carp%
echo %tipo%
)>%temp%\put.txt
goto u
:file
for %%x in (*.*) do echo put %%~sx>>%temp%\put.txt
goto:eof
:u
call :file
for /r /d %%y in (*) do (
echo mkdir "%%~ny">>%temp%\put.txt
echo cd "%%~ny">>%temp%\put.txt
cd %%~sy
call :file
)
echo quit>>%temp%\put.txt
ftp -i -s:%temp%\put.txt %serv%
pause
---------------------------------------------------------------
si preferis tener los archivos de configuracion en un archivo inf
---------------------------------------------------------------

archivo batch siguiente codigo:

@echo off
goto a
:b
set pa=%~s1
goto:eof
:a
call :b "%~dp0"
for /f "tokens=*" %%a in (%pa%/config.inf) do set %%a
%~d1
cd "%~s1"
::config
(
echo %usua%
echo %cont%
echo cd %carp%
echo %tipo%
)>%temp%\put.txt
goto u
:file
for %%x in (*.*) do echo put %%~sx>>%temp%\put.txt
goto:eof
:u
call :file
for /r /d %%y in (*) do (
echo mkdir "%%~ny">>%temp%\put.txt
echo cd "%%~ny">>%temp%\put.txt
cd %%~sy
call :file
)
echo quit>>%temp%\put.txt
ftp -i -s:%temp%\put.txt %serv%
pause
y un archivo llamdo  "config.inf" en el mismo directorio que el batch con la configuracion de acceso

serv=direccion del servidor
usua=nombre usuario
cont=contraseña
carp=carpeta raiz
tipo=binary
Creado por Dantas.es