Comment ouvrir une invite de commandes élevée en utilisant des lignes de commandes sur une commande cmd normale ?
Par exemple, j'utilise runas /username:admin cmd
mais la commande cmd ouverte ne semble pas être élevée ! Des solutions ?
Comment ouvrir une invite de commandes élevée en utilisant des lignes de commandes sur une commande cmd normale ?
Par exemple, j'utilise runas /username:admin cmd
mais la commande cmd ouverte ne semble pas être élevée ! Des solutions ?
Je suis tombé sur le même problème et la seule manière dont j'ai pu ouvrir l'invite de commandes en tant qu'administrateur depuis CMD était de faire ce qui suit :
powershell -Command "Start-Process cmd -Verb RunAs"
et appuyer sur EntréeJe n'ai pas assez de réputation pour ajouter un commentaire à la réponse principale, mais avec le pouvoir des alias, vous pouvez simplement taper ce qui suit :
powershell "start cmd -v runAs"
Il s'agit simplement d'une version plus courte de l'excellente solution de l'utilisateur3018703 :
powershell -Command "Start-Process cmd -Verb RunAs"
sudo.bat
(vous pouvez remplacer sudo
par le nom de votre choix) avec le contenu suivant powershell.exe -Command "Start-Process cmd \"/k cd /d %cd%\" -Verb RunAs"
sudo.bat
dans un dossier de votre PATH
; si vous ne savez pas ce que cela signifie, déplacez simplement ces fichiers dans c:\windows\
sudo
fonctionnera dans la boîte de dialogue Exécuter (win+r) ou dans la barre d'adresse de l'explorateur (c'est le meilleur :))sudo.bat
(vous pouvez remplacer sudo
par le nom de votre choix) avec le contenu suivant nircmdc elevate cmd /k "cd /d %cd%"
nircmdc.exe
et sudo.bat
dans un dossier de votre PATH
; si vous ne savez pas ce que cela signifie, déplacez simplement ces fichiers dans c:\windows\
sudo
fonctionnera dans la boîte de dialogue Exécuter (win+r) ou dans la barre d'adresse de l'explorateur (c'est le meilleur :))Selon documentation, le modèle de sécurité de Windows...
ne confère pas des privilèges administratifs en tout temps. Même les administrateurs exécutent sous des privilèges standards lorsqu'ils effectuent des tâches non administratives qui ne nécessitent pas des privilèges élevés.
Vous avez l'option Créer cette tâche avec des privilèges administratifs dans la boîte de dialogue Créer une nouvelle tâche (Gestionnaire des tâches > Fichier > Exécuter une nouvelle tâche), mais il n'y a pas de moyen intégré pour élever efficacement les privilèges en utilisant la ligne de commande.
Cependant, il existe des outils tiers (faisant appel aux API Windows en interne) que vous pouvez utiliser pour élever les privilèges à partir de la ligne de commande:
nircmdc elevate cmd
npm install -g windosu
(nécessite que node.js soit installé)sudo cmd
J'utilise des programmes nirsoft (par exemple nircmdc) et sysinternals (par exemple psexec) tout le temps. Ils sont très utiles.
Mais si vous ne voulez pas, ou ne pouvez pas, télécharger un programme tiers, voici une autre façon, purement Windows.
Réponse courte : vous pouvez, tout en étant élevé, créer une tâche planifiée avec des privilèges élevés que vous pouvez ensuite invoquer plus tard sans être élevé.
Réponse de longueur moyenne : tout en étant élevé, créez une tâche avec (mais je préfère l'interface graphique du planificateur de tâches) :
schtasks /create /sc once /tn cmd_elev /tr cmd /rl highest /st 00:00
Ensuite, plus tard, sans nécessiter d'élévation, invoquez avec
schtasks /run /tn cmd_elev
Réponse longue : Il y a beaucoup de détails compliqués ; consultez mon article de blog "Démarrer un programme SANS UAC, utile au démarrage du système et dans les fichiers batch (utilisez le planificateur de tâches)"
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.