Files
scripts/path-installer.ps1

34 lines
1.2 KiB
PowerShell
Raw Normal View History

2025-11-03 12:22:23 -06:00
$RutaBase = "C:\TEMP"
$ComandoNombre = "safecloud-run.cmd"
$URLGiteaBase = "https://recursos.safecloud.mx/support/scripts/raw/branch/main/"
$RutaCompleta = Join-Path $RutaBase $ComandoNombre
2025-11-03 14:13:19 -06:00
# Contenido de safecloud-run.cmd (LIMPIO, SIN ESPACIOS INVÁLIDOS)
2025-11-03 12:22:23 -06:00
$ScriptContent = @"
@echo off
set "BASE_URL=$URLGiteaBase"
2025-11-03 14:13:19 -06:00
if "%1"=="" ( goto :eof )
2025-11-03 12:22:23 -06:00
set "SCRIPT_NAME=%1"
2025-11-03 14:13:19 -06:00
set "FULL_URL=%%BASE_URL%%%%SCRIPT_NAME%%"
set "TEMP_FILE=%%TEMP%%\safecloud_temp_%%RANDOM%%_%%SCRIPT_NAME%%"
curl -sL "%%FULL_URL%%" ^> "%%TEMP_FILE%%"
if not exist "%%TEMP_FILE%%" ( goto :CLEANUP )
2025-11-03 12:22:23 -06:00
call "%%TEMP_FILE%%"
:CLEANUP
2025-11-03 14:13:19 -06:00
del "%%TEMP_FILE%%" 2^>nul
2025-11-03 12:22:23 -06:00
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"
}