43 lines
1.2 KiB
PowerShell
43 lines
1.2 KiB
PowerShell
$RutaBase = "C:\TEMP"
|
|
$ComandoNombre = "safecloud-run.cmd"
|
|
$URLGiteaBase = "https://recursos.safecloud.mx/support/scripts/raw/branch/main/"
|
|
$RutaCompleta = Join-Path $RutaBase $ComandoNombre
|
|
|
|
$ScriptContent = @"
|
|
@echo off
|
|
set "BASE_URL=$URLGiteaBase"
|
|
if "%1"=="" (
|
|
goto :eof
|
|
)
|
|
set "SCRIPT_NAME=%1"
|
|
set "FULL_URL=%BASE_URL%%%SCRIPT_NAME%%"
|
|
|
|
:: CORRECCION CRITICA: Uso de la variable TEMP local
|
|
set "TEMP_FILE=%TEMP%\safecloud_temp_%%RANDOM%%_%%SCRIPT_NAME%%"
|
|
|
|
curl -sL "%%FULL_URL%%" > "%%TEMP_FILE%%"
|
|
|
|
if not exist "%%TEMP_FILE%%" (
|
|
goto :CLEANUP
|
|
)
|
|
|
|
call "%%TEMP_FILE%%"
|
|
|
|
:CLEANUP
|
|
del "%%TEMP_FILE%%" 2>nul
|
|
goto :eof
|
|
"@
|
|
|
|
# 1. Creación de la carpeta y el archivo CMD (C:\TEMP)
|
|
New-Item -Path $RutaBase -ItemType Directory -Force | Out-Null
|
|
Set-Content -Path $RutaCompleta -Value $ScriptContent -Force | Out-Null
|
|
|
|
# 2. Modificación del PATH del Sistema
|
|
$PathActual = [Environment]::GetEnvironmentVariable("Path", "Machine")
|
|
if ($PathActual -notlike "*$RutaBase*") {
|
|
$NuevoPath = "$PathActual;$RutaBase"
|
|
[Environment]::SetEnvironmentVariable("Path", $NuevoPath, "Machine")
|
|
|
|
# Uso de SETX para forzar la actualización del PATH sin reiniciar
|
|
cmd /c "setx Path ""$NuevoPath"" /M >nul"
|
|
} |