76 votes

Comment puis-je changer définitivement l'invite de commandes dans Windows 7 ?

Je voudrais changer l'invite de commande en $p$g$_$f de manière permanente, mais elle se réinitialise à chaque fois que je rouvre la fenêtre de commande.

Comment puis-je faire en sorte qu'elle reste toujours la même ?

9 votes

Ceci est une question intéressante (+1) car de nos jours, il y a très peu de personnes qui savent même que leur invite de commandes DOS peut être personnalisée.

14 votes

Ne les appelle-t-on pas maintenant invite de Commandes?

3 votes

@La- rsTech: Oui, MS-DOS est bel et bien révolu.

72voto

djeidot Points 2143

À l'invite de commande, tapez :

setx Prompt $p$g$_$f

Ensuite, rouvrez l'invite de commande.

Pour toute personne ne sachant pas comment obtenir de l'aide pour les commandes DOS/CMD, tapez :

setx /?

Pour obtenir :

SetX dispose de trois modes de fonctionnement :

Syntaxe 1 :
    SETX [/S système [/U [domaine\]utilisateur [/P [mot de passe]]]] var valeur [/M]

Syntaxe 2 :
    SETX [/S système [/U [domaine\]utilisateur [/P [mot de passe]]]] var /K cheminreg [/M]

Syntaxe 3 :
    SETX [/S système [/U [domaine\]utilisateur [/P [mot de passe]]]]
         /F fichier {var {/A x,y | /R x,y chaîne}[/M] | /X} [/D délimiteurs]

Description :
    Crée ou modifie des variables d'environnement dans l'environnement utilisateur ou système. Peut définir des variables en fonction des arguments, des clés de registre ou des entrées de fichiers.

Liste des paramètres :
    /S     système           Spécifie le système distant auquel se connecter.

    /U     [domaine\]utilisateur   Spécifie le contexte utilisateur sous lequel
                                   la commande doit s'exécuter.

    /P     [mot de passe]   Spécifie le mot de passe pour le contexte utilisateur
                           donné. Demande une saisie si omis.

    var                    Spécifie la variable d'environnement à définir.

    valeur                 Spécifie une valeur à attribuer à la
                           variable d'environnement.

    /K     cheminreg         Spécifie que la variable est définie en fonction
                           des informations d'une clé de registre. Le chemin doit être spécifié sous la forme de
                           ruche\clé\...\valeur. Par exemple,
                           HKEY_LOCAL_MACHINE\System\CurrentControlSet\
                           Control\TimeZoneInformation\StandardName.

    /F     fichier            Spécifie le nom de fichier du fichier texte
                           à utiliser.

    /A     x,y             Spécifie les coordonnées de fichier absolues
                           (ligne X, élément Y) comme paramètres de recherche
                           dans le fichier.

    /R     x,y chaîne      Spécifie des coordonnées de fichier relatives par
                           rapport à "chaîne" comme paramètres de recherche.

    /M                     Spécifie que la variable doit être définie dans
                           l'environnement à l'échelle du système (HKEY_LOCAL_MACHINE)
                           Le paramètre par défaut est de définir la variable sous
                           l'environnement HKEY_CURRENT_USER.

    /X                     Affiche le contenu du fichier avec les coordonnées x,y.

    /D     délimiteurs      Spécifie des délimiteurs supplémentaires tels que ","
                           ou "\". Les délimiteurs intégrés sont l'espace,
                           la tabulation, le retour chariot et le saut de ligne. Tout
                           caractère ASCII peut être utilisé comme délimiteur supplémentaire.
                           Le nombre maximum de délimiteurs, y compris les délimiteurs intégrés, est de 15.

    /?                     Affiche ce message d'aide.

REMARQUE : 1) SETX écrit des variables dans l'environnement maître dans la base de registre.

      2) Sur un système local, les variables créées ou modifiées par cet outil
         seront disponibles dans les fenêtres de commandes futures mais pas dans la
         fenêtre de commande CMD.exe actuelle.

      3) Sur un système distant, les variables créées ou modifiées par cet outil
         seront disponibles lors de la prochaine session de connexion.

      4) Les types de données de clés de registre valides sont REG_DWORD, REG_EXPAND_SZ,
         REG_SZ, REG_MULTI_SZ.

      5) Ruches prises en charge : HKEY_LOCAL_MACHINE (HKLM),
         HKEY_CURRENT_USER (HKCU).

      6) Les délimiteurs sont sensibles à la casse.

      7) Les valeurs REG_DWORD sont extraites du registre au format décimal.

Exemples :
    SETX MACHINE COMPAQ
    SETX MACHINE "COMPAQ COMPUTER" /M
    SETX MYPATH "%PATH%"
    SETX MYPATH ~PATH~
    SETX /S system /U user /P password  MACHINE COMPAQ
    SETX /S system /U user /P password MYPATH ^%PATH^%
    SETX TZONE /K HKEY_LOCAL_MACHINE\System\CurrentControlSet\
         Control\TimeZoneInformation\StandardName
    SETX BUILD /K "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows
         NT\CurrentVersion\CurrentBuildNumber" /M
    SETX /S system /U user /P password TZONE /K HKEY_LOCAL_MACHINE\
         System\CurrentControlSet\Control\TimeZoneInformation\
         StandardName
    SETX /S system /U user /P password  BUILD /K
         "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\
         CurrentVersion\CurrentBuildNumber" /M
    SETX /F ipconfig.out /X
    SETX IPADDR /F ipconfig.out /A 5,11
    SETX OCTET1 /F ipconfig.out /A 5,3 /D "#$*."
    SETX IPGATEWAY /F ipconfig.out /R 0,7 Gateway
    SETX /S system /U user /P password  /F c:\ipconfig.out /X

1 votes

J'ai également essayé cela et ça a parfaitement fonctionné. J'ai dû marquer la réponse de l'autre gars, même si la vôtre était plus directe et concrète. La sienne était la première, alors j'ai dû faire ce qui était juste. Je vous ai quand même donné un vote positif.

31 votes

Je ne me soucie pas vraiment de qui est désigné comme la réponse. Je vais toutefois souligner pour référence future que la décision clé pour marquer une réponse n'est pas qui a répondu en premier, mais quelle réponse est la meilleure. Bien qu'il soit vrai que marquer la réponse est bon car cela donne de la réputation, la vraie raison de marquer la réponse est d'aider les personnes qui trouvent cette question plus tard à trouver plus rapidement la meilleure solution. Comme il n'y a rien de mal avec l'autre solution dans ce cas particulier, cela n'a pas d'importance.

1 votes

J'aime particulièrement cette réponse (+1) parce qu'elle montre qu'il y a plus d'une façon de faire la même chose (quelque chose qui est particulièrement souligné avec Perl [programmation]).

67voto

Dalroth Points 2468

Créez une nouvelle variable d'environnement appelée PROMPT. Définissez la valeur de la variable sur le prompt souhaité.

enter image description here

enter image description here

2 votes

+1 Pour être la seule réponse à mentionner l'élément important dans la première phrase. Une fois que l'on sait que l'invite émise par les interprètes de commandes est contrôlée par une variable d'environnement, le reste se réduit à un simple exercice d'application de la réponse générique de SuperUser sur les variables d'environnement.

0 votes

En fait, ce n'est pas la seule réponse à mentionner la création de la variable PROMPT - ma réponse mentionne également cela à l'étape 4, qui se lit comme suit : 4. Créez une variable appelée "PROMPT" et insérez votre texte de prompt désiré (...)

2 votes

Techniquement, ma réponse mentionne également la variable Prompt car elle fournit la commande pour la définir. :)

21voto

Randolf Richardson Points 14516

Pour changer l'apparence de votre Invite de commandes DOS (ou "Command Prompt"), faites un clic droit sur "Ordinateur" (généralement sur votre bureau Windows ou dans le menu Démarrer de Windows), puis suivez ces étapes :

  1. Cliquez sur l'étiquette "Paramètres système avancés"
  2. Cliquez sur le bouton "Variables d'environnement..."
  3. Cliquez sur le bouton "Nouveau..." (une "variable utilisateur" n'a d'effet que sur vous, et les "variables système" affectent tous les utilisateurs)
  4. Créez une variable appelée "PROMPT" et insérez votre texte de l'invite désiré (tel que je l'ai inclus pour vous dans l'image finale ci-dessous)
  5. Cliquez sur le bouton "OK" pour fermer la fenêtre "Variables d'environnement"
  6. Cliquez sur le bouton "OK" pour fermer la fenêtre "Propriétés système"

Ce changement survivra également aux redémarrages.

description de l'image ici

description de l'image ici

description de l'image ici

2 votes

J'adore comment vous avez mis en évidence l'endroit où cliquer dans chaque image. Comment avez-vous réussi cela?

4 votes

@Konerak: Merci! J'ai ouvert chaque fenêtre, appuyé sur Alt-Impr. écran (pour copier la fenêtre active actuelle dans le presse-papiers), puis je l'ai collée dans Adobe Photoshop. Ensuite, j'ai créé un calque au-dessus (ou devant) de l'image, rempli avec 100% de noir, changé l'opacité du calque à 25% (ce qui permet à l'image de s'estomper à un niveau de 75%), puis j'ai utilisé l'outil de sélection rectangulaire avec un "3px d'adoucissement" pour sélectionner la zone à mettre en surbrillance et j'ai appuyé sur la touche Suppr. (pour supprimer de ce calque noir). Ensuite, j'ai enregistré l'image en tant que fichier .PNG dans mon répertoire C:/ Temp / et l'ai téléchargée ici.

1 votes

Je suis un complet débutant en photoshop, mais je vois de quoi tu parles! Je vais tellement essayer cela la prochaine fois que je présenterai notre application à nos utilisateurs - bien mieux que les lignes rouges de MS Paint partout sur l'écran. Merci!

5voto

JJ Okie Points 51

Modifiez la commande du menu ou le lien qui démarre l'invite de commande, changez sa cible par exemple.

%SystemRoot%\system32\cmd.exe /K "prompt $p$g$_$f"

Et si vous voulez un espace supplémentaire avant le curseur:

%SystemRoot%\system32\cmd.exe /K "prompt $p$g$_$f "

0 votes

+1 pour être une solution intéressante et unique.

4voto

Lorenz Lo Sauer Points 918

Windows est livré avec Windows PowerShell qui permet le pipelinage, entre autres fonctionnalités autrefois réservées à Linux.

Vous pouvez le démarrer en cliquant sur le bouton Démarrer et en saisissant PowerShell, ce qui vous donne trois options. Cliquez sur PowerShell. Faites un clic droit sur la barre de titre de la fenêtre et sélectionnez Propriétés. Dans la fenêtre qui s'ouvre, vous pouvez configurer les paramètres d'affichage et de comportement.

Sinon, au lieu d'ouvrir PowerShell en premier lieu, sélectionnez et cliquez sur les modules PowerShell.

Voir la documentation de Microsoft pour savoir ce que vous pouvez faire:

PS: Je ne recommanderais pas le shell classique si vous développez des applications console.

0 votes

+1 pour une autre bonne réponse. J'aime particulièrement le terme "Shell classique".

1 votes

Les tuyaux existent également dans CMD.EXE et fonctionnent à peu près de la même manière que sur Unix. Ils font partie de la syntaxe CMD depuis les premières versions bêta publiques de NT, et faisaient également partie de la syntaxe des commandes de COMMAND.COM sur DOS.

1 votes

La grande différence entre les tuyaux de la shell de commande, les tuyaux de la shell *nix et les tuyaux powershell est que les tuyaux powershell passent des objets et non des chaînes. C’est un élément décisif à mon avis.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X