Programación en Pawn - SAMP

[BATCH] Sencillo script de backups

Aquí podrás publicar temas sobre programación en general (C++, JAVA, Python, etc), que no encajen en el apartado Programación Web.
Bueno, hace tiempo uso un script que hacia backups automáticamente de mi Gamemode y abria el IDE que uso (ST3). Pense en publicarlo, pero decidí re-hacerlo para así fuera mas "personalizable" que el que yo usaba

Como usuario del programa, solo tienes que hacer 2 cosas:

1) Crear un acceso directo de tu IDE (Pawno, ST3, VScode, cualquiera), renombrarlo a "ide" y dejarlo en la raiz del servidor.
2) Click derecho en el script, le das a editar, y en las primeras lineas hay unos parametros para editar, los comentarios indican que va en cada parte.

Y con eso estaría. El script genera automaticamente la carpeta de backups y los crea usando el siguiente formato:

B_HRA_MIN_SEG##DIA_MES.pwn


Tienen que guardarlo en formato .bat

Código: Seleccionar todo

@echo off
REM Script desarrollado por Federico Arredondo
REM Recordar configurar estos parametros de aqui abajo

REM carpetagm es el nombre de la carpeta donde esta el Gamemode, el default es gamemodes
set carpetagm=gamemodes
REM ext es la extension del Gamemode, generalmente es .pwn, pero tambien existe el .p. NO colocar el punto!
set ext=pwn
REM El nombre del gamemode, sensible a mayusculas.
set nombregm=GameMode

IF NOT EXIST "B_Backups" (mkdir B_Backups)

:menu
echo [1] - Hacer backup e iniciar IDE.
echo [2] - Hacer backup unicamente
echo [3] - Iniciar el IDE sin hacer backup
echo [4] - Salir del programa
set /p opc="Ingrese una opcion: "
IF "%opc%"=="1" (goto backide)
IF "%opc%"=="2" (goto back)
IF "%opc%"=="3" (goto ide)
IF "%opc%"=="4" (goto :EOF)
echo ¡Opcion incorrecta!
echo ­­Presione cualquier tecla para volver a ingresar una opcion
pause>nul
cls
goto menu

:backide
set fecha=%DATE%
set horaa=%TIME%
set dia=%fecha:~0,2%
set mes=%fecha:~3,2%
set hora=%horaa:~0,2%
set minuto=%horaa:~3,2%
set segundo=%horaa:~6,2%
echo /%carpetagm%\%nombregm%.%ext%
copy "./%carpetagm%\%nombregm%.%ext%" "./B_Backups/"
cd B_Backups
rename "%nombregm%.ext%" "B_%hora%_%minuto%_%segundo%##%dia%_%mes%.pwn"
IF EXIST "%nombregm%.ext%" (del %nombregm%.%ext%)
cd ..
start ide.lnk
echo ¡Hecho! Preisone cualquier tecla para mostrar de nuevo el menu
pause>nul
cls
goto menu

:back
:backide
set fecha=%DATE%
set horaa=%TIME%
set dia=%fecha:~0,2%
set mes=%fecha:~3,2%
set hora=%horaa:~0,2%
set minuto=%horaa:~3,2%
set segundo=%horaa:~6,2%
echo /%carpetagm%\%nombregm%.%ext%
copy "./%carpetagm%\%nombregm%.%ext%" "./B_Backups/"
cd B_Backups
rename "%nombregm%.ext%" "B_%hora%_%minuto%_%segundo%##%dia%_%mes%.pwn"
IF EXIST "%nombregm%.ext%" (del %nombregm%.ext%)
cd ..
echo ¡Hecho! Preisone cualquier tecla para mostrar de nuevo el menu
pause>nul
cls
goto menu

:ide
start ide.lnk
echo ¡Hecho! Preisone cualquier tecla para mostrar de nuevo el menu
pause>nul
cls
goto menu
Pocas personas valoran el buen trabajo genial -good

¿Quién está conectado?

En total hay 1 usuario conectado :: 0 registrados, 0 ocultos y 1 invitado (basados en usuarios activos en los últimos 5 minutos)
La mayor cantidad de usuarios identificados fue 855 el 27 May 2018 00:03

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado