web-dev-qa-db-fra.com

Comment exécuter un .bat depuis l'intérieur du IDE

Ce que je veux faire est très simple, mais je ne trouve pas le moyen de le faire.
Dans mes projets, j'ai plusieurs fichiers .bat (je sais, je suis vieux) qui effectuent des tâches telles que l'exécution de SqlMetal, etc. 

Je veux juste faire un clic droit sur le fichier et sélectionner "Exécuter" ou quelque chose pour que la batte soit exécutée. Comment fait-on ça?

Note: Je sais que je peux utiliser Outils -> Outils externes, mais ce n'est pas ce que je recherche

55
Eduardo Molteni

Si chaque projet est associé à quelques fichiers de commandes, pourquoi ne pas les inclure dans le projet, ajouter un nouvel outil externe et le lier à un élément de menu personnalisé pour exécuter l'outil? Cela vous donnera une liste des fichiers de commandes dans chaque projet et une commande du menu contextuel pour les exécuter. Le seul inconvénient est qu'il n'est pas spécifique au type de fichier (il vous permet d'exécuter n'importe quel fichier en tant que fichier de traitement par lots).

Voici comment le faire ...

Créer un outil externe appelé "Run batch file"

  1. Définissez la commande sur: CMD.EXE 
  2. Définissez les arguments sur:/c "$ (ItemPath)" 
  3. Définissez le répertoire initial sur: $ (ItemDir)
  4. Cochez la case "Utiliser la fenêtre de sortie" puis cliquez sur Appliquer pour créer la commande.
  5. Notez où la nouvelle commande est apparue dans la liste des commandes. Les commandes externes sont numérotées à partir de 1 en commençant sous la barre de division. # 1 est généralement "Create GUID"

Maintenant, allez dans Outils -> Personnaliser et sélectionnez l’onglet Commandes.

  1. Sélectionnez le bouton radio du menu contextuel et sélectionnez "Menus contextuels du projet et de la solution | Article" dans le menu déroulant.
  2. Maintenant, utilisez "Ajouter une commande ..." pour ajouter une nouvelle commande
  3. Dans la liste Catégories, sélectionnez "Outils"
  4. Dans les commandes, sélectionnez le "numéro de commande externe" correspondant à la position de la commande personnalisée "Exécuter le fichier batch" que vous avez indiquée à l'étape 5 ci-dessus.
  5. Déplacez-le à la bonne position dans la liste, ajoutez des raccourcis clavier, etc.
  6. Fermez la boîte de dialogue.

Maintenant, faites un clic droit sur le fichier de commandes et vous devriez voir un élément de menu "Exécuter un fichier de commandes". Ceci exécutera le fichier de commandes et affichera sa sortie dans la fenêtre Sortie VS.

121
Ade Miller
  1. Cliquez avec le bouton droit sur le fichier de commandes dans l'explorateur de solutions.
  2. Sélectionnez «Ouvrir avec…» dans le menu contextuel.
  3. Cliquez sur «Ajouter…»
  4. Dans la zone de texte «Nom du programme», entrez powershell.exe
  5. Dans la zone de texte «Nom convivial», entrez «PowerShell».
  6. Sélectionnez "Définir par défaut"
  7. Cliquez sur OK

via

17
cleison

Cliquez avec le bouton droit sur un fichier dans la fenêtre de l'Explorateur de solutions, sous Ouvrir, cliquez sur le bouton Ajouter pour ajouter vos fichiers .bat. Utilisez% 1 dans votre fichier .bat pour obtenir le chemin du fichier sélectionné.

6
Hans Passant

Consultez l'extension Ouvrir la ligne de commande Visual Studio. 

Selon la description, il comporte:

  • Ouverture d'une ligne de commande à la racine du projet.
  • Prise en charge de toutes les consoles telles que CMD, PowerShell, Bash, etc. 
  • Mise en évidence de la syntaxe, Intellisense et exécution des fichiers .cmd et .bat.

Pour les fichiers de votre solution, un bouton de menu contextuel apparaît.

Execute batch file

Vous pouvez également utiliser le raccourci clavier Maj + Alt + 5 pour modifier un fichier de traitement par lots. Cela rend très facile et rapide l’exécution de tout fichier de commandes, même de ceux qui ne font pas partie de votre projet.

3
Erwin Mayer

Mereley une suggestion: C’est un scénario qui peut être réalisé avec l’extension VsCommandBuddy. La configuration suivante est un exemple:

{ "cmdname": "mk", "title": "Run MK.BAT", "description": "Run the MK bat file.", "cwd": "$(SolutionDir)", "filename": "cmd.exe", "arguments": "/C mk.bat", "async": false}Vous pouvez également attribuer des raccourcis pour pouvoir appeler vos fichiers de traitement par lots à l'aide de touches de raccourci. La sortie vient dans votre volet de sortie.

0
Paul0515