J'essaie de définir une variable d'environnement pour Bash. Cependant, j'ai besoin que ceci soit réglé avant l'un des scripts de démarrage du shell (y compris /etc/profile
), car /etc/profile
agit différemment en fonction de la valeur de cette variable. Plus précisément, je veux créer un raccourci vers MinTTy qui fonctionne comme git-bash
, mais j'ai besoin de définir la variable d'environnement MSYSTEM
avant le démarrage du shell, ou au moins avant de commencer à traiter les scripts de démarrage.Puis-je définir une variable d'environnement sur la ligne de commande de Bash?
Une solution qui a MinTTy en définissant la variable d'environnement avant de démarrer le shell sera également acceptée.
Edit: Ce que je cherche vraiment est en quelque sorte une option de ligne de commande BASH qui établira une variable d'environnement, un peu semblable à l'option -D
à la plupart des compilateurs C (et d'autres). Ce serait une solution "générale". Alternativement, une option similaire (ligne de commande ou configuration) à MinTTy fera également le travail.
Pour mon besoin spécifique, j'ai une idée pour un palliatif potentiel: Exécuter un script BASH - sans scripts de démarrage - qui définit ma variable requise et exec
s un autre shell en tant que shell de connexion.
ne sais pas si cela fonctionnera pour votre cas, mais trycreating un script d'emballage qui a mis l'env variable, puis exécutez = >> "source/etc/profile". plus tous les autres scripts qui sont exécutés au démarrage/logintim. – zee
@zee J'ai considéré cela. Mais ensuite, je dois répliquer complètement le processus de démarrage: login/interactif, les fichiers 'profile' et' bashrc' corrects, etc. – Menachem
Je peux essayer de démarrer le shell sans fichiers de démarrage, mais exécute seulement un script shell qui définit le variable d'environnement, puis 'exec'sa un login ou un shell interactif. – Menachem