Puse ese comando en la consola y borra el grupo sin ningún problema.
Cuando ejecuto el script y sale lo del "todo ok" presiono la s y alcanzo a ver que sale algo así como:
"la sintaxis del comando..."
Creo que acá debe haber un error en estas líneas de código:
Choice /M "Todo OK?"
If %Errorlevel%==1 (
:: Eliminamos el grupo anterior y el backup de los usuarios.
net localgroup "%del%" /delete >NUL
Del /Q "%temp%\%del%_usuarios.txt"
) ELSE (
:: Mostramos el backup de los usuarios para deshacer los cambios manualmente xD.
notepad "%temp%\%del%_usuarios.txt"
)
exit
Si logro resolver esto luego, posteo.
Salu2
Lo tuve que dejar de la siguiente forma:
@Echo off
:Select
Echo Ingrese nombre del Grupo al que va a cambiar de nombre: | MORE
set /p del=^>^>
If not defined del (goto :select)
Net localgroup "%DEL%" >nul 2>&1 || (Echo. El grupo "%DEL%" no existe! | MORE & Set "Del=" & Goto :Select)
Echo+ & Echo ingrese nuevo nombre: | MORE
set /p add=^>^>
If not defined add (goto :select)
:: Pasamos la lista d los miembros a un archivo de texto, por si las moscas, para que no se pierda :P
net localgroup "%del%">"%temp%\%del%_usuarios.txt"
:: Creamos el nuevo grupo:
net localgroup "%add%" /add >nul
:: Obtenemos los usuarios del grupo que queremos borrar, Y los vamos añadiendo al nuevo grupo
For /F "tokens=*" %%a in ('net localgroup "%del%" ^| findstr /V /R "Comentario Miembros ----- Nombre.de.alias Se.ha.completado"') do (
net localgroup "%add%" /add "%%a" >NUL
)
CLS & Echo+ & Echo [+] Su nuevo grupo: | MORE
Net localgroup "%ADD%" | findstr /V /R "Comentario ----- Se.ha.completado"| MORE
:: Eliminamos el grupo anterior y el backup de los usuarios.
net localgroup "%del%" /delete >NUL
Del /Q "%temp%\%del%_usuarios.txt"
echo.
echo.
echo El nombre del grupo se ha modificado correctamente!!!
echo.
echo.
pause
cls
Goto :select
Gracias y millón de bendiciones Elektro Hacker!!!!
A todo esto:
Existe alguna forma de que no se caiga el programa al insertar un espacio o signos como " espacios & ???