web-dev-qa-db-fra.com

Exécution automatiquement les commandes lorsqu'une invite de commande est ouverte

Je cherche un moyen d'exécuter certaines commandes de la console automatiquement lorsqu'une invite de commande est ouverte sous Windows, spécifiquement pour définir des alias de commande.

Par exemple, lorsqu'une invite de commande est ouverte, je veux une commande telle que ce qui suit sera automatiquement exécutée afin que je puisse utiliser ls au lieu de dir.

doskey ls=dir

Comment cela peut-il être fait?

21
Daniel Williams

Si vous voulez qu'il charge sur le démarrage, plutôt que lorsque vous vous connectez, si vous avez XP pro (XP Home n'incluait pas GPEDIT.MSC), faites ceci:

Démarrer> Exécuter> GPEDIT.MSC

et appuyez sur Entrée. Exécutez ensuite gpupdate/force à partir d'une ligne de commande.

Aller à

Configuration de l'ordinateur> Paramètres Windows> Scripts> Démarrage

et ajoutez l'emplacement au script.

Vous pouvez également le faire pour une connexion utilisateur sous

Configuration utilisateur> Paramètres Windows> Scripts> Démarrage

Si vous avez XP home, vous pouvez copier les scripts sur:

C:\Windows\System32\GroupPolicy\Machine\scripts\startup

pour les charger sur le démarrage, ou:

C:\Windows\System32\GroupPolicy\User\scripts\Logon

pour les charger pour un utilisateur sur la connexion. Le dossier groupicy est caché.

9
KCotreau

Les alias de commande sont spécifiques à la fenêtre de la console que vous les configurez, par conséquent, un script de démarrage ne fonctionnera pas. Vous pouvez le faire de cette façon:

  1. Créer un fichier de commandes (.cmd) Avec vos commandes Doskey, mettez-la quelque part dans les données de l'application.

  2. Configurez-le pour être démarré automatiquement chaque fois que vous ouvrez cmd. Le réglage est dans le registre:

    • clé: HKCU\SOFTWARE\Microsoft\Command Processor
    • valeur: AutoRun
    • type: REG_EXPAND_SZ
    • les données: "%AppData%\aliases.cmd"
48
user1686

Il y a plusieurs emplacements qui le feront, mais le menu Démarrer> Le dossier de démarrage est probablement le plus facile.

Run 'msconfig' et voir quels programmes démarrent et pourquoi. Vous pouvez simplement ajouter votre programme à l'une de ces listes (par exemple, dans le registre).

0
Konerak

Le problème ici est si vous le faites dans le démarrage, ces substitutions seraient disponibles que dans l'invite CMD ouverte. Si elle ferme, toutes ces substitutions seront perdues et doivent être faites à nouveau pour chaque invite de commande ouverte.

Ainsi, certaines manières alternatives (vous pouvez les combiner):

I. Créer un lot et un raccourci:

  1. Créez un lot avec ces macros et enregistrez-la à un endroit connu (E.G. C:\apps\mycmd.bat).
  2. Créez un raccourci sur le bureau (ou l'endroit où vous souhaitez) mettre "cmd/k" avant son chemin (par exemple "cmd/k c:\apps\mycmd.bat").
  3. Donc, toutes vos commandes seront exécutées chaque fois que vous ouvrez ce raccourci.

II. Créez un lot et une entrée dans la variable Enviroment du chemin:

  1. Créez un lot avec ces macros et enregistrez-la à un endroit connu (E.G. C:\apps\mycmd.bat).
  2. Aller à Panneau de configuration> Système> Configues avancées> Avancé> Variables Enviroment.
  3. Dans les entrées utilisateur ou système, recherchez une trajectoire nommée variable. Double-cliquez dessus et, à la fin, insérer ";" et le chemin de votre batte (E.G. "C:\apps \" => "précédent_string; c:\apps \"), alors Ok et ok.
  4. Ainsi, lorsque vous utilisez un cmd (ou dans un fichier BAT), mettez simplement le nom d'une batte dans un chemin créé (E.g. "c:\apps") pour exécuter vos commandes (par exemple, tapez "MyApps" pour exécuter ces commandes de substitution).
0
kokbira