Sommaire
Vous avez raison, Git Bash pour Windows n'est pas uniquement bash
compilé pour Windows. Il paquet de contenant bash
(qui est un shell en ligne de commande ) et une collection d'autres, des utilitaires distincts * nix comme ssh
, scp
, cat
, find
et d' autres (que vous exécutez à l' aide du shell), compilé pour Windows et un nouveau terminal d'interface de ligne de commande fenêtre appelée mintty
.
En un mot
Sous Windows, vous pouvez exécuter des commandes telles que ipconfig /all
ou en format G:
utilisant cmd.exe
. Ces commandes sont des fichiers exécutables sous C:\Windows\system32
, stockés en tant que ipconfig.exe
et format.com
fichiers. cmd.exe
est séparé des deux et les charge et les exécute à la demande de l'utilisateur.
ssh
, scp
, cat
, find
Sont exécutés en utilisant bash
exactement de la même manière. Ils sont généralement stockés sous des systèmes * nix /usr/bin
plutôt que C:\Windows\system32
sur des systèmes, car Windows et * nix ont une structure de fichiers système organisée différemment.
Dans le cas de Git Bash pour Windows, ces programmes se trouvent dans le dossier d’installation de Git:, C:\Program Files\Git\usr\bin
qui se trouve également dans l’environnement Linux émulé sous /usr/bin
.
Tout comme pouvoir simplement utiliser cmd.exe
* nix ne vous permet pas de faire beaucoup sans les autres utilitaires du système, le simple fait de pouvoir exécuter Bash sous Windows n’est pas non plus très utile. Cela signifie que toutes ces commandes supplémentaires doivent être associées à Bash pour créer un progiciel utilisable.
Détails: applications POSIX sous Windows
Normalement, ces commandes supplémentaires se trouvent sur les systèmes * nix et non sur Windows, car elles ont été programmées sur l'API de programmation POSIX (utilisée par * nix) et non sur les API Win32 (utilisée par Windows). La documentation de l'API POSIX est disponible en accès libre. Certaines personnes l'ont donc transférée sur d'autres systèmes, notamment Windows. Les implémentations Windows des API / bibliothèques POSIX sont fournies par Cygwin
et MSYS
.
Cela ressemble à ce que fait le projet Wine , mais il convertit POSIX-> Windows plutôt que Windows-> POSIX comme le fait Wine.
menthe
mintty
est incluse car cmd.exe
la fenêtre de ligne de commande Windows par défaut manque certaines fonctionnalités importantes, normalement disponibles sur * la plupart des systèmes * nix. Dans la plupart des cas, il mintty
s'agit d'un meilleur choix pour l'exécution de commandes (certainement pour les utilitaires fournis avec le package Git Bash pour Windows), mais il peut arriver qu'une application système Windows fonctionne mieux cmd.exe
.