Como desarrollador, a menudo tengo la necesidad de abrir un símbolo del sistema para diversos fines. Por ejemplo, uso iisreset
para reiniciar mi servidor web local.
Normalmente abro la ventana de comandos de una de dos maneras:
- Presione Win, escriba "cmd" y presioneEnter
- Mientras está en el Explorador, mantenga presionado Shifty haga clic con el botón derecho en una carpeta, y elija "Abrir ventana de comandos aquí"
Sin embargo, cuando abro la ventana de comandos de cualquiera de estas formas, no tengo todos los privilegios de administrador a los que siento que tengo derecho.
Para ejecutar aplicaciones solo de administrador, tengo que abrir la línea de comandos de esta manera relativamente laboriosa:
- Presione Win, escriba "cmd"
- Espera a que el menú se llene
- Levante la mano del teclado y colóquelo en el mouse
- Haga clic derecho en el elemento de menú "cmd.exe"
- Elija "Ejecutar como administrador"
Esto es inaceptable por varias razones:
- La ventana siempre se abre en C: \ windows \ system32, en lugar de mi
Users
directorio (como en la técnica aprobada 1) o la carpeta en la que quiero estar (como en la técnica aprobada 2). Así que a menudo tengo que cambiar los directorios para llegar a donde quiero ir. - Este proceso es varios milisegundos más lento que cualquiera de mis métodos preferidos. Realizado varias veces al día, todos los días durante el resto de mi carrera, suma unos diez días de tiempo perdido dedicado a hacer clic y esperar y cambiar el directorio.
- Como programador, realizar una tarea robótica sin sentido me causa un gran dolor emocional.
- Como programador, levantar mi mano es una tarea extenuante que me causa un gran dolor físico.
Es por eso que estoy buscando una solución única que permita que las técnicas aprobadas 1 y 2 abran mensajes de comando del administrador.
Muchos programas le permiten cambiar permanentemente su nivel de privilegio predeterminado desde el menú Propiedades. Símbolo del sistema no es uno de esos programas.
¿Cómo hago que la ventana de comandos se ejecute como administrador de forma predeterminada (incluso cuando uso la opción de menú contextual "Abrir ventana de comandos aquí")?
Respuestas:
Para responder a la primera parte de su pregunta, cuando presiona la tecla de Windows y escribe "CMD" puede presionar Ctrl+ Shift+ Enterpara abrir como administrador.
Para responder la segunda parte de su pregunta, pegue lo siguiente en el bloc de notas y guárdelo con la extensión ".reg":
Luego ejecuta el archivo. Fusionará los cambios en el registro y agregará la opción a sus menús contextuales. (No se necesita la tecla Mayús).
fuente
La pestaña Compatibilidad está completamente deshabilitada para todos los ejecutables de Windows:
Para establecer privilegios de administrador para los ejecutables de Windows, debe crear un acceso directo y usar la pestaña Acceso directo →
Advanced
(el elemento del símbolo del sistema en el menú Inicio ya es un acceso directo):Eso es normal y tiene sentido ya que si está abriendo un símbolo del sistema de administración, probablemente esté realizando algunas acciones del sistema para las cuales necesita privilegios de administrador en lugar de acciones de usuario para las que ya tiene permisos.
Puede establecer el directorio predeterminado globalmente agregando / editando la
Autorun
entrada del registro (ni siquiera tiene que ser una cadena expandible para usar variables de entorno):Ahora, cada vez que abra un símbolo del sistema utilizando cualquier método , automáticamente cambiará (bueno, técnicamente cambiará el directorio ) a su directorio de perfil de usuario.
Aún mejor, puede agregar otros comandos para que se ejecuten automáticamente cada vez que abra un símbolo del sistema utilizando el
&
operador (por ejemplo,cd /d %userprofile% & cls & dir
). Además, puede establecer el mismo valor en la misma clave debajo de laHKLM
rama para configurarlo para todos los usuarios.Tenga en cuenta que aún tendrá que aceptar la solicitud de UAC. Desafortunadamente, (¿actualmente?) No hay forma de crear una "lista blanca" de UAC de programas confiables para que el símbolo del sistema se pueda ejecutar como administrador sin tener que aceptarlo. Esto te deja con (a) pocas opciones.
useraccountcontrolsettings.exe
)En el primer caso, evita el UAC por completo, mientras que en los dos últimos, solo ingresa sus credenciales una vez al crear el acceso directo.
fuente
cd /d "%userprofile%"
ejecuciones automáticas no solo al abrir una nueva ventana de consola, sino también cada vez que se invoca un nuevo hilo de ejecución. Esto puede causar problemas, por ejemplo, confor /f
bucles. Prueba esto en un símbolo del cmd:cd "\Program Files"
a continuaciónfor /f "delims=" %I in ('cmd /c cd') do @echo %I
. Verá que elfor /f
bucle cree que su directorio de trabajo actual es $ home, no Program Files. Es más seguro modificar elcmd
acceso directo y establecer el objetivo como"%comspec%" /k cd /d "%userprofile%"
.%comspec% /c cd /d "%USERPROFILE%" & %comspec%
La solución que uso es abrir el símbolo del sistema abriendo el menú de inicio, escribiendo 'cmd' y presionando Ctrl+ Shift+ Enter. Esto hará que el programa seleccionado se inicie como administrador.
fuente
Para ejecutar automáticamente
CMD
como administrador cada vez que simplemente se hace clic (sin tener que hacer clic derecho o crear accesos directos adicionales), hay una solución fácil para esto:En el Editor del registro , navegue hasta:
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
Layers
carpeta , tendrá que crear una y nombrarla:haga clic con el botón derecho en la
AppCompatFlags
carpeta, seleccione New→KeyHaga clic derecho
Layers
, seleccione New→ String Value. Establezca el Nombre de su nuevo valor de cadena en la ruta completa alCMD.EXE
símbolo del sistema (C:\Windows\System32\cmd.exe
)Haga doble clic en el nuevo valor de cadena para modificarlo y configure los "Datos del valor" en
RUNASADMIN
.Tenía la misma molestia, y esto funcionó para mí.
fuente
Si desea que CMD.exe se ejecute siempre como administrador, simplemente agregue el siguiente código de registro a su Registro:
fuente
Ha habido un par de herramientas que he usado que fueron otras soluciones (además de lo que Jesse mencionó).
Antes, cuando salió por primera vez de Vista, Microsoft salió con un " elevar " powertoy que era bastante útil y no el trabajo y aún así, yo creo (no se han probado) funciona para Windows 7. caída en su entorno de ruta y usted podría funcionar "elevar iisreset" desde un símbolo del sistema normal (o incluso "elevar cmd" desde el inicio / ejecución o crear un acceso directo)
fuente
La forma más fácil de evitar todo el dolor de UAC, etc. es configurar una entrada de Programa de tareas para ejecutar cmd.exe utilizando los privilegios más altos. No cree un evento Trigger para él y asegúrese de que la casilla de verificación Permitir que la tarea se ejecute bajo demanda esté seleccionada en la pestaña Configuración. También en la pestaña Configuración, asegúrese de que el menú desplegable "Si la tarea ya se está ejecutando, entonces se aplica la siguiente regla" está configurado en No iniciar una nueva instancia.
Luego cree un acceso directo a esto en su escritorio y ejecútelo desde allí, o mediante una tecla de acceso directo o ancle el acceso directo a la barra de tareas.
Lo hice en mi sistema Windows 7 y funciona perfectamente.
fuente
Simplemente copie y pegue cmd.exe y renómbrelo como "cmda.exe" en la carpeta \ system32 \ (337 KB ni siquiera es un gran problema ...). La opción "ejecutar como administrador" en las propiedades de cmda.exe ya no estará atenuada y puede configurarla para que siempre se ejecute como administrador. Ahora tendrá dos mensajes de comando: el primero es regular, el segundo tiene un (a) privilegio dmin. ¡Es tan fácil escribir "cmda" en la Winbarra de búsqueda como lo hace con "cmd"!
Para el cmd en el menú contextual con privilegio de administrador, asegúrese de que ya tiene cmda.exe en su lugar, agréguelo al nuevo archivo .reg y ejecútelo
Verá dos mismas líneas en el menú contextual (shift); un símbolo del sistema no elevado y otro con "(Administrador)" agregado.
Eso es...
fuente
Cree un acceso directo a cmd.exe, haga clic derecho y seleccione propiedades, en la pestaña Acceso directo seleccione Avanzado, marque Ejecutar como administrador.
fuente
Creo que la forma más fácil de ejecutar siempre cmd como administrador es crear el archivo .reg con el siguiente código:
Pegue eso en el bloc de notas o algo y guárdelo como archivo .reg. Nota: Esto hace que el símbolo del sistema se ejecute como administrador para todos los usuarios. Para ejecutar siempre como administrador solo en su usuario, simplemente cambie HKEY_LOCAL_MACHINE a HKEY_CURRENT_USER
fuente
Todo gracias a Jesse Brohinsky
Una versión más mejorada. Esto también incluye el directorio de fondo que también le permite abrir cmd desde el interior de la carpeta. También por el bien de esto, puede abrir el símbolo del sistema como no administrador.
También puede deshabilitar AdminApprovalMode. De esta forma, no necesita ejecutar como administrador cuando es administrador. http://helpdeskgeek.com/windows-7/turn-off-admin-approval-mode-in-windows-7/
fuente
La única otra forma, aparte de lo que Dracs mencionó, es deshabilitar UAC completamente
fuente
Lo siguiente funciona para mi
obtendrá el mismo aviso de uac que confirma a runas admin .. lo encontré hace algún tiempo @ stackexchange
fuente