Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - davidperz

#1
Scripting / script batch git en .bat
24 Junio 2018, 17:50 PM
Buenas tengo un problema, tengo varios scripts. Quiero hacer un backup de mi repositorio de git, comprimir y decir si es correcto e incorrecto y enviar los repositorios que se han clonado por correo. Tengo estos scripts:

@echo off
::Creacion de las variables
setlocal EnableDelayedExpansion
set Fecha=%Date:~6,4%%Date:~3,2%%Date:~0,2%
set Fecha_con_barras=%Date:~6,4%/%Date:~3,2%/%Date:~0,2%
set Hora=%time:~0,2%:%time:~3,2%:%time:~6,2%

::Entra al directorio C:\backup\git
mkdir %Fecha%
cd %Fecha%

::Clonar repositorios en la carpeta
set elem[0]=repositorio
set elem[1]=repositorio2

setlocal EnableDelayedExpansion
for /l %%a in (0,1,1) do (
git clone !elem[%%a]!

if %ERRORLEVEL% == 0 (
echo %Fecha_con_barras% %Hora% Repositorio !elem[%%a]! clonado correctamente >> C:\Users\proyecto\Desktop\scripts\errores%Fecha%.log
echo !elem[%%a]! clonado correctamente >> C:\Users\proyecto\Desktop\scripts\correo.txt
) else (
echo %Fecha_con_barras% %Hora% Repositorio !elem[%%a]! no ha sido clonado. >> C:\Users\proyecto\Desktop\scripts\errores%Fecha%.log
echo !elem[%%a]! no ha sido clonado. >> C:\Users\proyecto\Desktop\scripts\correo.txt
)
)

::Borrar archivos de mas de 7 dias
FORFILES /P "C:\backup\git" /D -7 /c "CMD /c DEL /Q @PATH"

Este es el script que lo comprime:

$fecha=get-date -uformat "%Y%m%d"
$source = "origen"
$destination = "destino.zip"
If(Test-path $destination) {Remove-item $destination}
Add-Type -assembly "system.io.compression.filesystem"
[io.compression.zipfile]::CreateFromDirectory($Source, $destination)

Necesitaria ayuda por favor espero respuestas