elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Script en batch para crear respaldos.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Script en batch para crear respaldos.  (Leído 2,229 veces)
mis4

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Script en batch para crear respaldos.
« en: 21 Diciembre 2016, 21:00 pm »

Hola que tal hermanos! buen dia.

Estoy aprendiendo batch y acabo de terminar un script que respalda usuarios de diferente forma, quisiera compartir el script con ustedes, soy principiante espero no haber cometido muchos errores  :rolleyes: :-X, les explico com funciona y les dejo el codigo abajo :P

Funcion: Tiene 2 modos;
             *Normal: Pide la ruta donde se colocara el Respaldo (ejemplo "c:\respaldo",  
                sin comillas xD) Crea respaldo de todos los usuarios que se encuentran en
                windows, las carpetas que respaldason Escritorio, Documentos, Musica,
                 Videos, Imagenes, Outloock, Descargas.
          
            *Personalizado: Se listaran y escogeran los usuarios a respaldar unos por uno,
               despues se pedira la ruta del backup creandose dentro una carpeta con la
               fecha del dia y dentro el respaldo.


Código:


@echo off
setlocal EnableDelayedExpansion

:menu
mode 80,35
cls
color 0E
echo.
echo Respadar Usuarios Windows....
echo                                             ***By:M1s4***
echo 1)Normal
echo 2)Personalizado
echo 3)Instrucciones
echo.
set /p op=Escoge una Opcion(numero):
if "%op%"=="1" (goto Norm)
if "%op%"=="2" (goto Pers)
if "%op%"=="3" (goto Inst)

::Algo salio mal! Escribe el numero de la opcion que quieras
echo. el numero "%op%" no es una opcion correcta e_e
pause
goto menu
exit


:Inst
mode 105,20
cls
color 0E
echo.
echo La Opcion:
echo.
echo        *Normal: Pide la ruta donde se colocara el Respaldo (ejemplo "c:\respaldo", sin comillas xD) Crea respaldo de todos los usuarios que se encuentran en windows
echo                 las carpetas que respaldason Escritorio, Documentos, Musica, Videos, Imagenes, Outloock, Descargas.
echo.
echo        *Personalizado: Se listaran y escogeran los usuarios a respaldar unos por uno, despues se pedira la ruta del backup
echo                       creandose dentro una carpeta con la fecha del dia y dentro el respaldo.
pause
pause>nul
goto menu
exit


:Norm
mode 80,35
cls
color A
echo.
set /p ruta=ruta del respaldo (Ejemplo "E:\respaldo, M: " sin comillas)
set raiz=!ruta!
setx RutaNorm !raiz!
setx CarpF %date:~0,2%-%date:~3,2%-%date:~8,2%
echo la ruta que escribio fue "%raiz%"
mkdir "%raiz%\%CarpF%"
goto CopNorm
exit

:CopNorm
cls
Color A
cd "c:\users"
dir > "c:\%userprofile%\desktop\us3rs.txt"
cd "c:\%userprofile%\desktop"
for /f "tokens=*" %%i in (us3rs.txt) do (
robocopy "c:\users\%%i\desktop" "%RutaNorm%\%%i\desktop"
robocopy "c:\users\%%i\download" "%RutaNorm%\%%i\download"
robocopy "c:\users\%%i\documents" "%RutaNorm%\%%i\documents"
robocopy "c:\users\%%i\images" "%RutaNorm%\%%i\images"
robocopy "c:\users\%%i\music" "%RutaNorm%\%%i\music"
robocopy "c:\users\%%i\videos" "%RutaNorm%\%%i\videos"
robocopy "c:\users\%%i\AppData\Roming\Microsoft\outlook" "%RutaNorm%\%%i\outlook")
echo Se termino de copiar los archivos
start "%RutaNorm%"
pause
goto Fin
exit


:Fin
echo Se termino de copiar los archivos
pause
cls
echo.
echo.
echo.
echo 1)Volver al menu    2)salir
echo.
echo.
set /p opc=Que desea hacer?
if "%opc%"=="1" (goto menu)
if "%opc%"=="2" (goto salir)
::Error de escritura, Por favor escriba de forma correcta el usuario :)
pause
goto Fin
exit

:Pers
cls
echo.
echo.
echo.
echo.
set /p ruta=ruta del respaldo (Ejemplo "E:\respaldo, M: " sin comillas):
set raiz=!ruta!
setx RutaPers !raiz!
echo se guardo la ruta %raiz%
setx CarpF %date:~0,2%-%date:~3,2%-%date:~8,2%
mkdir "%raiz%\%CarpF%"



echo.
pause
cls
echo.
dir "c:\users"
echo.
echo.
set /p nomb=Escriba el usuario que desea respaldar:
setx user !nomb!
echo.
echo.
echo 1)Agregar_otro_usuario  2)Comenzar_a_copiar
set /p opcion=Escoga una opcion(escriba el numero):
if "%opcion%"=="1" (goto CopPers)
if "%opcion%"=="2" (goto SegCop)

::Algo salio mal! Escribe el numero de la opcion que quieras
echo. el numero "%op%" no es una opcion correcta e_e
pause
goto Pers
exit


:CopPers
cls
Color 0E
echo.
dir "c:\users"
echo.
set /p nomb=escribe el usuario:
setx nomb1 !nomb!
set /p op1=Desea agregar otro usuario (S/N)?:
if "%op1%"=="s" (echo !nomb! >> "%userprofile%\desktop\ListUser.txt" && goto CopPers)
if "%op1%"=="n" (setx user2 %nomb%  && goto CopPers2)
::Error de escritura, Por favor escriba de forma correcta el usuario :)
pause
goto CopPers
exit


:CopPers2
cd "c:\%userprofile%\desktop"
for /f "tokens=*" %%i in (ListUser.txt) do (
robocopy "c:\users\%%i\desktop" "%RutaPers%\%%i\desktop"
robocopy "c:\users\%%i\download" "%RutaPers%\%%i\download"
robocopy "c:\users\%%i\documents" "%RutaPers%\%%i\documents"
robocopy "c:\users\%%i\images" "%RutaPers%\%%i\images"
robocopy "c:\users\%%i\music" "%RutaPers%\%%i\music"
robocopy "c:\users\%%i\videos" "%RutaPers%\%%i\videos"
robocopy "c:\users\%%i\AppData\Roming\Microsoft\outlook" "%RutaPers%\%%i\outlook")
echo.
echo.
echo.
echo Se termino de copiar los archivos
start "%RutaPers%"
pause
goto Fin


:salir
msg *Buen dia :)
exit



La educacion se basa en inspirar tu mente no en llenar tu cabeza  ::) :D :laugh:


« Última modificación: 21 Diciembre 2016, 21:33 pm por mis4 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Re: Ayuda para crear script basico en batch
Scripting
SuperDraco 1 3,571 Último mensaje 2 Junio 2011, 05:17 am
por .:UND3R:.
[BATCH] [VBS] Crear un script para subir un archivo a Mediafire? « 1 2 3 4 »
Scripting
SuperDraco 38 29,720 Último mensaje 4 Marzo 2012, 23:25 pm
por Eleкtro
Script batch para ping « 1 2 »
Scripting
terrateck 14 21,469 Último mensaje 20 Junio 2013, 01:04 am
por engel lex
[Batch][Tutorial] Crear respaldos de lote de archivos.
Scripting
areyes 0 2,171 Último mensaje 4 Septiembre 2019, 18:38 pm
por areyes
[BATCH] Crear script dentro de scritpt
Scripting
Last_squat 1 2,282 Último mensaje 19 Marzo 2021, 13:13 pm
por Last_squat
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines