Remarque: il se peut que le package chere doive être instancié avec des privilèges d'administrateur. Si vous êtes pris par cela et que vous êtes tenté de l'utiliser sudo, vous n'obtiendrez peut-être pas le résultat escompté. Dans ce cas, connectez-vous en tant qu'administrateur sur la machine Windows.
dreftymac
Réponses:
410
Lorsque vous installez Cygwin (ou si vous l'avez déjà installé, téléchargez-le à nouveau et redémarrez le programme d'installation pour exécuter une mise à jour), assurez-vous de sélectionner le cherepackage dans la catégorie "Shells".
Après Cygwin est lancé, ouvrir un terminal Cygwin (comme un administrateur) et le type de la commande: chere -i -t mintty -s bash.
Maintenant, vous devriez avoir "Invite Bash ici" dans le menu contextuel du clic droit de Windows.
( mintty est le terminal par défaut de Cygwin. Si vous ne le choisissez pas avec l' -toption, votre "Invite Bash ici" utilisera le même terminal que l'invite de commandes Windows, ce qui empêche le redimensionnement horizontal.)
Super trouvaille, merci! J'ai découvert que vous pouvez spécifier le terminal que vous souhaitez ouvrir en utilisant -t, par exemple, pour ouvrir mintty que vous utilisezchere -i -t mintty
Kevin Condon
29
Vient de tester avec 64 bits cygwin (1.7.27) et chere semble maintenant exister. pro-tip: n'oubliez pas de lancer le terminal cygwin avec des privilèges d'administrateur.
BuildTheRobots
11
Une dernière chose à noter. Si vous l'avez déjà fait avec chere -i -t mintty -fpour forcer l'écrasement. Vous devrez également exécuter cygwin en tant qu'administrateur.
Greg Jennings
29
A eu des problèmes d'autorisation sur W7x64 (Erreur (5): l'accès est refusé. La ruche n'est pas accessible en écriture). Résolu en lançant Cygwin en tant qu'administrateur.
DmitrySandalov
17
Cygwin n'avait pas de shell par défaut dans mon cas, donc l'ajout -s bashde faire a chere -i -t mintty -s bashfait ce travail pour moi
Bryce Guinta
97
Voici ce que j'utilise. Il ne nécessite pas de modification de cherepackage ou de registre. Fonctionne sur Windows 7.
Très bonne astuce, mais l' winxalias n'a pas fonctionné sur ma configuration Cygwin. J'ai dû supprimer les deux barres obliques inverses et les remplacer .par $PWDpour que cela fonctionne.
not2qubit
Que faire si le raccourci (adapté pour utiliser le chemin Cygwin64 de mon installation) ouvre cygwin dans mon dossier utilisateur? :( Peut-être que cela ne fonctionne qu'avec Cygwin 32 bits?
Alex Hall
Celui-ci travaille aussi pour moialias winx='/cygdrive/c/Windows/explorer.exe /e,$(cygpath -wa .)'
Wakan Tanka
1
Dans cygwin 2.6.0 (sur Win 7 x64), cela peut être fait beaucoup plus facilement: cygstart .ouvrir l'Explorateur avec le dossier actuel, ou n'importe quelle syntaxe de dossier cygstart .., cygstart /your/pathetc ...
244an
2
Avertissement: C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico C:\cygwin\bin\bash.exe -l -c "cd \"$0\" ; exec bashgarde le descripteur de fichier ouvert dans le $0répertoire, même après avoir changé le répertoire de travail en autre chose. Pire, la copie de la fenêtre ( ALT+F2), même si vous avez déjà changé de répertoire de travail, ouvre un autre descripteur de fichier $0. Cela peut interférer avec certaines opérations qui peuvent vouloir supprimer / modifier $0dans n'importe quel processus. Si vous obtenez l'erreur «Autorisation refusée» lors de l'accès, $0cela peut être la cause
Matt
33
Depuis le terminal cygwin, exécutez cette commande:
echo "cd your_path" >> ~/.bashrc
Le script .bashrc est exécuté lorsque vous ouvrez une nouvelle session bash. Le code ci-dessus avec changement dans le répertoire your_path lorsque vous ouvrez une nouvelle session cygwin.
Ce n'est pas la réponse, car il ne crée pas de raccourci qui utilise ledit répertoire, comme requis par la question, il change le comportement de toutes les méthodes de démarrage du shell Cygwin. Vous ne devez pas modifier un paramètre global (ou un profil de connexion) pour résoudre un problème local.
Ben Voigt
Une fois, j'ai utilisé exactement cette méthode pour ajouter un utilisateur au fichier de mots de passe, en laissant accidentellement l'un des >caractères. Puis je me suis déconnecté :-)
paxdiablo
@paxdiablo ouch
bschwagg
30
J'ai créé un fichier .reg qui met une option "Ouvrir Cygwin ici" dans le menu contextuel du clic droit. Cela dépend du package "chere" de Cygwin, que vous pouvez installer en utilisant apt-cyg si vous ne l'avez pas installé dans la configuration initiale.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin_bash]
@="Open Cygwin Here"
[HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin_bash\command]
@="C:\\cygwin\\bin\\mintty.exe -e /bin/xhere /bin/bash.exe"
Pour ceux qui se demandent comment utiliser cela, copiez simplement le texte sur fond gris et placez-le dans un fichier texte appelé "foo.reg" et double-cliquez dessus.
Andrew Moylan
3
+1 la meilleure solution ici. Et merci d'avoir mentionné apt-cyg, je ne connaissais pas cet outil
user11153
C'était exactement ce que je cherchais, et cela m'a même aidé avec d'autres choses car même le site Microsoft ne m'a pas obtenu le même résultat.
FilBot3
J'ai dû changer pour "cygwin" mais j'obtiens cette erreur: "Échec de l'exécution de / bin / xhere: aucun fichier ou répertoire"
Totty.js
@ Totty.js êtes-vous sûr d'avoir installé le package 'chere' dans Cygwin?
Jeutnarg
17
Pour cygwin64 ou les installations sans chere, vous pouvez utiliser la commande suivante dans une entrée de registre (en supposant que les fenêtres sont dues à votre chemin, en supposant également que le répertoire d'installation de cygwin est c: \ cygwin64)
Pouvez-vous expliquer pourquoi vous avez 3 entrées de registre (x2)?
not2qubit
1
ils sont pour les contextes Directory, Drive et Background
Tom Kay
Enfin, une solution qui a fonctionné pour moi, même si j'ai quelques problèmes pour la comprendre complètement ;-) [le 'bash' après 'exec bash']. Astuce: vous pouvez remplacer les 3 entrées par 1: «Dossier» au lieu de «Répertoire», «Lecteur» et «Arrière-plan».
t0r0X
avec juste 'Dossier', le lien apparaît dans le menu contextuel d'un lecteur, mais ne s'exécute pas. Cependant, j'ai pu réduire à 2 entrées avec «Dossier» et «Répertoire \ Contexte»
Tom Kay
1
Pour emacs: "C: \\ cygwin \\ bin \\ mintty.exe -i /Cygwin-Terminal.ico / bin / bash -l -c 'emacs \" cygpath \"%V\"\ ";'"
Jan Matousek
12
Si vous souhaitez avoir ce répertoire par défaut, ajoutez simplement une cdinstruction à votre ~/.profilefichier.
Ce que j'ai tendance à faire, c'est d'utiliser cette méthode pour définir mon répertoire habituel, ainsi que de définir des alias pour mes cas courants:
alias tom="cd /users/tom"
ou votre équivalent. Cela me permet de changer de répertoire très rapidement.
Cet alias doit-il également être ajouté au ~/.profilefichier ou exécuté une seule fois?
iono
2
@tomeoftom, si vous exécutez simplement cela dans un shell, cela n'affectera que ce shell. Cela n'affectera pas ceux que vous démarrez. Donc, si vous voulez qu'il soit toujours disponible, vous devez le mettre dans l'un de vos fichiers de démarrage (dont ~/.profileune possibilité).
paxdiablo
cela n'a pas fonctionné pour moi une fois mis dans ~ / .profile, mais ~ / .bashrc a fonctionné.
zupa
@zupa, les règles de sélection des fichiers de démarrage sont raisonnablement compliquées (bien que tout soit là dans la bashpage de manuel si vous creusez suffisamment). C'est pourquoi j'ai déclaré .profilecomme une possibilité.
paxdiablo
.profile génère en fin de compte .bashrc, vous pouvez donc ajouter cette commande dans bashrc à la place. (.profile n'a pas fonctionné pour moi)
laertis
8
J'utilise et Icon pour lancer mon cygwin sans le cherepackage.
Créer un raccourci sur mon bureau pour le terminal cygwin.
R-cliquez sur l'icône et sélectionnez les propriétés.
Sur l'onglet de raccourci, utilisez ceci pour la CIBLE:
C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
Pour START IN, placez le chemin du dossier dir / dans lequel vous souhaitez lancer cygwin. c'est à direC:\some\dir\name\here
ok 2 choses 1. l'ajout -cdans "Target" ne fait aucune différence tant que vous fournissez un chemin dans "Start In" 2. cette solution crée un problème avec PATH. cygwin ne parvient pas à ajouter /usr/local/bin:/usr/binle PATH du système, laissant impossible d'invoquer certains de ses binaires. La configuration réside probablement dans /etc/profile>> `if [$ {CYGWIN_NOWINPATH-addwinpath} =" addwinpath "]; puis `
laertis
8
Comme l'a dit two7s_clash, vous devez d'abord installer le cherepackage et configurer mintty:
Ouvrez le terminal Cygwin en tant qu'administrateur
apt-cyg install chere
chere -i -t mintty
Vous pouvez maintenant ouvrir cygwin dans un répertoire spécifique avec un clic droit de la souris dans l'Explorateur Windows (menu contextuel) et sélectionnez "Invite Bash ici".
Vous pouvez également ouvrir cygwin à partir d'un répertoire spécifique à l'aide de l'invite de commande Windows:
Pour créer un raccourci Windows qui lance un terminal Cygwin dans un répertoire de votre choix, essayez ce qui suit:
Cliquez avec le bouton droit sur le bureau Windows, sélectionnez «Nouveau», puis sélectionnez «Raccourci».
Pour l'emplacement de l'élément, entrez le texte suivant, en changeant le minttychemin si nécessaire et en remplaçant le nom du répertoire souhaité où indiqué.
Lorsqu'une nouvelle installation est nécessaire, je crée une "variable d'environnement utilisateur" Windows nommée HOMEet lui attribue le chemin de l'emplacement de "Mes documents".
Le programme d'installation de cygwin détecte la HOMEvariable, la traduit automatiquement en un cygpath et la sélectionne comme mon répertoire ~.
Cela a bien fonctionné pour chaque poste de travail que j'ai utilisé professionnellement au cours des 5 dernières années (environ 3 ou 4, Win7). J'ai toujours été le seul utilisateur sur ces machines, je ne peux pas dire quel est l'effet.
J'ai créé un script de modification du registre pour ouvrir Cygwin dans n'importe quel dossier sur lequel vous faites un clic droit. C'est sur mon GitHub.
Je pense qu'une condition préalable à l'existence de xhere est l'installation de chere, comme mentionné dans d'autres réponses.
Samuel
1
Sur ma machine Windows, il ne prenait pas:
chere -i -t mintty
Parce que la coquille de menthe n'était pas disponible, mais vous pourriez avoir le choix de diverses autres coquilles comme ash bash cmd dash mksh pdksh posh tcsh zsh passwd.
Mintty n'est pas un shell, c'est un émulateur de terminal.
Palec
Comment cela répond-il à la question d'origine?
Leigh
Cela fournira de l'aide à ceux qui n'ont pas de menthe dans leur système et obtiennent une erreur en essayant la solution fournie ci-dessus, j'ai également suivi la solution fournie ci-dessus mais cela n'a pas fonctionné sur ma machine Windows, mais ma réponse a résolu le problème.
user3065757
1
Vous pouvez simplement ouvrir le terminal cygwin et écrire: cd et après glisser-déposer, déposez le dossier souhaité et entrez!
Bien que cela ne résout pas complètement la question posée, c'est un conseil très utile. Merci.
RoG
1
Dans la réponse qui utilise le registre, j'ai constaté que sur Windows 2008 R2 SP1, vous devez supprimer l'arrière-plan du chemin. De plus, comme chere et xhere ne font pas partie de cygwin64, voici une solution qui fonctionne pour les deux, combinant le registre et les solutions Send To. Remplacez «E: \ cygwin64» par votre emplacement d'installation:
J'ai créé le fichier de commandes et l'ai placé dans le répertoire / bin de Cygwin. Ce script a été développé afin de permettre d'installer / désinstaller les entrées de registre pour ouvrir les dossiers et lecteurs sélectionnés dans Cygwin. Pour plus de détails, voir le lien http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html .
mise à jour: Cette solution fait la même chose que les premières suggestions mais toutes les manipulations avec le registre Windows sont cachées dans le script.
J'ai également eu un problème avec git, qui "volait" mes commandes cygwin - j'ai donc dû exécuter C:\cygwin\bin\mintty.exe -
mais après avoir installé chereet exécuté en chere -i -t mintty -f tant qu'administrateur (voir ci-dessus), vous pouvez simplement utiliser: C:\cygwin\bin\mintty.exe -e /bin/xhere /bin/bash.exe "."
j'ai ajouté ceci dans Total Commander en tant que bouton personnalisé (à droite cliquez sur le panneau> ajouter ...) et cela fonctionne très bien.
Créer un fichier bash dire move.shqui a le code suivant
C:\cygwin64\bin\run.exe -p /bin bash runFile.sh
Cela démarre le Cygwin et exécute le runFile.shprésent dans le répertoire bin de Cygwin Supposons que vous vouliez naviguer vers un répertoire spécifique disons E:\code
alors runFile.sh a le code suivantcd E:
cd code
Enfin une réponse indépendante de Cygwin lui-même.
Cela utilise le fait que, si je suis sur le répertoire C:\\Coolet que j'appelle la commande C:\\Cygwin\\bin\\mintty.exe, minttys'ouvrira automatiquement sur le répertoire courant, c'est-à-dire C:\\Cool.
Tout d'abord, vous devrez créer le fichier C:\\Cygwin\\silent_run.vbsavec le contenu suivant:
Function EnquoteString(argument)
EnquoteString = Chr(34) & argument & Chr(34)
End Function
arglist = ""
With WScript.Arguments
For Each arg In .Unnamed
' Wscript.Echo "Unnamed: " & arg
If InStr(arg, " ") > 0 Then
' arg contains a space
arglist = arglist & " " & EnquoteString(arg)
Else
arglist = arglist & " " & arg
End If
Next
End With
CreateObject("Wscript.Shell").Run Trim( arglist ), 0, False
Ensuite, pour installer cette réponse, vous utiliserez un fichier de registre Windows. Pour cela, il suffit de mettre le contenu du fichier suivant dans un fichier nomméC:\\Cygwin\\AddMinttyToContextMenu.reg
Maintenant, corrigez tous les chemins codés en dur, c'est- C:\\Cygwinà- dire à l'emplacement réel où se trouve votre installation Cygwin.
Ensuite, ouvrez simplement le fichier C:\\Cygwin\\AddMinttyToContextMenu.regpour installer vos nouvelles entrées de registre et vous avez terminé.
Le fichier C:\\Cygwin\\AddMinttyToContextMenu.regfonctionne en ouvrant d'abord a cmd.exe, en changeant dans le répertoire où vous vous trouvez, puis en appelant C:\\Cygwin\\silent_run.vbspour ouvrir le C:\\Cygwin\\bin\\mintty.exeterminal avec les options de ligne de commande-w max , c'est-à-dire pour l'ouvrir maximisé.
Le script C:\\Cygwin\\silent_run.vbsest nécessaire pour ouvrir le C:\\Cygwin\\bin\\mintty.exeterminal sans garder le premier que cmd.exenous avons ouvert, ouvert.
La première entrée de C:\\Cygwin\\AddMinttyToContextMenu.regn'utilise pas C:\\Cygwin\\silent_run.vbscar par défaut les HKEY_CLASSES_ROOT\Directory\Background\shellclés sont déjà ouvertes dans le répertoire courant, alors, on peut simplement appelerC:\\Cygwin\\bin\\mintty.exe directement pour le faire fonctionner hors de la boîte.
@echo off
C:
SET mypath=%~dp0
c:\cygwin\bin\bash -c "cd '%mypath%'; export CHERE_INVOKING=1; exec /bin/bash --login -i"
Copiez les commandes ci-dessus dans un fichier texte et enregistrez-le sous .bat dans n'importe lequel de "votre dossier d'intérêt". Il devrait ouvrir cygwin dans "votre dossier d'intérêt".
basé sur la réponse de @LindseyD J'ai créé un simple fichier BAT, qui ouvre cygwin dans le répertoire courant, il peut être utile (pour moi, c'est le cas). En supposant que vous avez le répertoire bin de cygwin dans PATH.
FOR /F %%x IN ('sh -c pwd') DO bash -l -i -c 'cd %%x; exec bash'
sudo
, vous n'obtiendrez peut-être pas le résultat escompté. Dans ce cas, connectez-vous en tant qu'administrateur sur la machine Windows.Réponses:
Lorsque vous installez Cygwin (ou si vous l'avez déjà installé, téléchargez-le à nouveau et redémarrez le programme d'installation pour exécuter une mise à jour), assurez-vous de sélectionner le
chere
package dans la catégorie "Shells".Après Cygwin est lancé, ouvrir un terminal Cygwin (comme un administrateur) et le type de la commande:
chere -i -t mintty -s bash
.Maintenant, vous devriez avoir "Invite Bash ici" dans le menu contextuel du clic droit de Windows.
( mintty est le terminal par défaut de Cygwin. Si vous ne le choisissez pas avec l'
-t
option, votre "Invite Bash ici" utilisera le même terminal que l'invite de commandes Windows, ce qui empêche le redimensionnement horizontal.)la source
-t
, par exemple, pour ouvrir mintty que vous utilisezchere -i -t mintty
chere -i -t mintty -f
pour forcer l'écrasement. Vous devrez également exécuter cygwin en tant qu'administrateur.-s bash
de faire achere -i -t mintty -s bash
fait ce travail pour moiVoici ce que j'utilise. Il ne nécessite pas de modification de
chere
package ou de registre. Fonctionne sur Windows 7.Accédez à votre dossier "Envoyer vers":
Créez un raccourci nommé
Bash Here
ayant ceci dans leTarget
champ:Dans l'Explorateur Windows, vous cliquez avec le bouton droit sur un dossier et sélectionnez
Send To > Bash Here
.Et voici l'astuce inverse, ouvrir un explorateur Windows dans votre répertoire bash actuel. Créez cet alias:
Remarque: la
cygpath -w .
partie ci-dessus est entourée de graduations.Maintenant, tapez simplement
winx
à l'invite bash, et un Win Explorer apparaîtra là-bas.Remarque: si winx vous dirige vers votre dossier de documents, essayez
la source
winx
alias n'a pas fonctionné sur ma configuration Cygwin. J'ai dû supprimer les deux barres obliques inverses et les remplacer.
par$PWD
pour que cela fonctionne.alias winx='/cygdrive/c/Windows/explorer.exe /e,$(cygpath -wa .)'
cygstart .
ouvrir l'Explorateur avec le dossier actuel, ou n'importe quelle syntaxe de dossiercygstart ..
,cygstart /your/path
etc ...C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico C:\cygwin\bin\bash.exe -l -c "cd \"$0\" ; exec bash
garde le descripteur de fichier ouvert dans le$0
répertoire, même après avoir changé le répertoire de travail en autre chose. Pire, la copie de la fenêtre (ALT+F2
), même si vous avez déjà changé de répertoire de travail, ouvre un autre descripteur de fichier$0
. Cela peut interférer avec certaines opérations qui peuvent vouloir supprimer / modifier$0
dans n'importe quel processus. Si vous obtenez l'erreur «Autorisation refusée» lors de l'accès,$0
cela peut être la causeDepuis le terminal cygwin, exécutez cette commande:
echo "cd your_path" >> ~/.bashrc
Le script .bashrc est exécuté lorsque vous ouvrez une nouvelle session bash. Le code ci-dessus avec changement dans le répertoire your_path lorsque vous ouvrez une nouvelle session cygwin.
la source
>
caractères. Puis je me suis déconnecté :-)J'ai créé un fichier .reg qui met une option "Ouvrir Cygwin ici" dans le menu contextuel du clic droit. Cela dépend du package "chere" de Cygwin, que vous pouvez installer en utilisant apt-cyg si vous ne l'avez pas installé dans la configuration initiale.
la source
apt-cyg
, je ne connaissais pas cet outilPour cygwin64 ou les installations sans chere, vous pouvez utiliser la commande suivante dans une entrée de registre (en supposant que les fenêtres sont dues à votre chemin, en supposant également que le répertoire d'installation de cygwin est c: \ cygwin64)
Fonctionne sur le fichier de registre Windows 7 et 8 disponible en téléchargement ici: http://tomkay.me/blog/Cygwin64---Open-Here-18
la source
cygpath \"%V\"
\ ";'"Si vous souhaitez avoir ce répertoire par défaut, ajoutez simplement une
cd
instruction à votre~/.profile
fichier.Ce que j'ai tendance à faire, c'est d'utiliser cette méthode pour définir mon répertoire habituel, ainsi que de définir des alias pour mes cas courants:
ou votre équivalent. Cela me permet de changer de répertoire très rapidement.
la source
~/.profile
fichier ou exécuté une seule fois?~/.profile
une possibilité).bash
page de manuel si vous creusez suffisamment). C'est pourquoi j'ai déclaré.profile
comme une possibilité.J'utilise et Icon pour lancer mon cygwin sans le
chere
package.C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
C:\some\dir\name\here
la source
-c
dans "Target" ne fait aucune différence tant que vous fournissez un chemin dans "Start In" 2. cette solution crée un problème avecPATH
. cygwin ne parvient pas à ajouter/usr/local/bin:/usr/bin
le PATH du système, laissant impossible d'invoquer certains de ses binaires. La configuration réside probablement dans/etc/profile
>> `if [$ {CYGWIN_NOWINPATH-addwinpath} =" addwinpath "]; puis `Comme l'a dit two7s_clash, vous devez d'abord installer le
chere
package et configurer mintty:apt-cyg install chere
chere -i -t mintty
Vous pouvez maintenant ouvrir cygwin dans un répertoire spécifique avec un clic droit de la souris dans l'Explorateur Windows (menu contextuel) et sélectionnez "Invite Bash ici".
Vous pouvez également ouvrir cygwin à partir d'un répertoire spécifique à l'aide de l'invite de commande Windows:
cd
) vers le répertoire personnaliséExécuter
C:\cygwin64\bin\mintty.exe C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l
Cette commande ouvrira cygwin avec le répertoire courant extrait de l'invite de commande.
FreeCommander
Cette commande peut également être utilisée pour ouvrir cygwin à partir du gestionnaire de fichiers personnalisé, comme FreeCommander.
Pour ouvrir cygwin avec le répertoire actuel extrait de FreeCommander, procédez comme suit:
Ajouter une nouvelle barre d'outils (+ icône), Raccourci: Insérer
C:\cygwin64\bin\mintty.exe
%ActivDir%
C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l
Vous pouvez ajouter un raccourci personnalisé pour ouvrir cygwin depuis FreeCommander:
Grande référence: MinTTY Wiki, article Conseils: Commencer dans un répertoire particulier
la source
Pour créer un raccourci Windows qui lance un terminal Cygwin dans un répertoire de votre choix, essayez ce qui suit:
Cliquez avec le bouton droit sur le bureau Windows, sélectionnez «Nouveau», puis sélectionnez «Raccourci».
Pour l'emplacement de l'élément, entrez le texte suivant, en changeant le
mintty
chemin si nécessaire et en remplaçant le nom du répertoire souhaité où indiqué.Par exemple, l'OP utiliserait le texte suivant:
Cliquez sur Suivant'.
Entrez le nom souhaité pour le raccourci et cliquez sur «Terminer».
Plusieurs raccourcis peuvent être placés sur le bureau pour ouvrir les terminaux Cygwin dans divers répertoires souvent consultés.
Inspiré par la solution publiée sur Comment ouvrir un shell Cygwin dans un répertoire spécifique de Netbeans? sur superuser.com .
la source
Recherchez le fichier Cygwin.bat et créez un contenu comme celui-ci:
Ajoutez le chemin vers cygwin.bat au PATH de l'environnement.
Maintenant, dans n'importe quel dossier, vous pouvez taper dans la barre d'adresse:
Vous pouvez également le taper lorsque vous dans cmd.exe
la source
J'ai utilisé les lignes de code suivantes pour démarrer zsh dans le répertoire courant de Win7.
notez que j'ai utilisé% V au lieu de% L ou% 1 (car les deux ne fonctionnaient pas pour moi)
la source
Lorsqu'une nouvelle installation est nécessaire, je crée une "variable d'environnement utilisateur" Windows nommée
HOME
et lui attribue le chemin de l'emplacement de "Mes documents".Le programme d'installation de cygwin détecte la
HOME
variable, la traduit automatiquement en un cygpath et la sélectionne comme mon répertoire ~.Cela a bien fonctionné pour chaque poste de travail que j'ai utilisé professionnellement au cours des 5 dernières années (environ 3 ou 4, Win7). J'ai toujours été le seul utilisateur sur ces machines, je ne peux pas dire quel est l'effet.
la source
J'ai créé un script de modification du registre pour ouvrir Cygwin dans n'importe quel dossier sur lequel vous faites un clic droit. C'est sur mon GitHub.
Voici mon GitHub
Exemple de
RegEdit
code de Github pour les machines 64 bits:la source
Ouvrez le terminal Cygwin en tant qu'administrateur
En PowerShell (utilisant du chocolat):
Dans cygwin, installer le menu contextuel
Vous pouvez maintenant cliquer avec le bouton droit de la souris et utiliser "Invite Bash ici" dans n'importe quel dossier.
la source
Vous pouvez ajouter l'icône au shell en ajoutant un
Icon
champ défini sur le chemin d'accès à votreCygwin.ico
fichier.la source
Sur ma machine Windows, il ne prenait pas:
chere -i -t mintty
Parce que la coquille de menthe n'était pas disponible, mais vous pourriez avoir le choix de diverses autres coquilles comme ash bash cmd dash mksh pdksh posh tcsh zsh passwd.
j'ai donc utilisé:
chere -i -s bash
la source
Vous pouvez simplement ouvrir le terminal cygwin et écrire: cd et après glisser-déposer, déposez le dossier souhaité et entrez!
la source
Dans la réponse qui utilise le registre, j'ai constaté que sur Windows 2008 R2 SP1, vous devez supprimer l'arrière-plan du chemin. De plus, comme chere et xhere ne font pas partie de cygwin64, voici une solution qui fonctionne pour les deux, combinant le registre et les solutions Send To. Remplacez «E: \ cygwin64» par votre emplacement d'installation:
la source
C'est la seule solution de registre Cygwin64 qui a fonctionné pour moi dans Windows 8.1:
Assurez-vous de modifier votre chemin «C: \ cygwin64» si nécessaire.
la source
J'ai créé le fichier de commandes et l'ai placé dans le répertoire / bin de Cygwin. Ce script a été développé afin de permettre d'installer / désinstaller les entrées de registre pour ouvrir les dossiers et lecteurs sélectionnés dans Cygwin. Pour plus de détails, voir le lien http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html .
mise à jour: Cette solution fait la même chose que les premières suggestions mais toutes les manipulations avec le registre Windows sont cachées dans le script.
Exécutez la commande pour installer
Exécutez la commande pour désinstaller
la source
J'ai également eu un problème avec git, qui "volait" mes commandes cygwin - j'ai donc dû exécuter
C:\cygwin\bin\mintty.exe -
mais après avoir installé
chere
et exécuté enchere -i -t mintty -f
tant qu'administrateur (voir ci-dessus), vous pouvez simplement utiliser:C:\cygwin\bin\mintty.exe -e /bin/xhere /bin/bash.exe "."
j'ai ajouté ceci dans Total Commander en tant que bouton personnalisé (à droite cliquez sur le panneau> ajouter ...) et cela fonctionne très bien.
la source
Créer un fichier bash dire
move.sh
qui a le code suivantC:\cygwin64\bin\run.exe -p /bin bash runFile.sh
Cela démarre le Cygwin et exécute lerunFile.sh
présent dans le répertoire bin de Cygwin Supposons que vous vouliez naviguer vers un répertoire spécifique disonsE:\code
alors runFile.sh a le code suivantcd E: cd code
la source
Enfin une réponse indépendante de Cygwin lui-même.
Cela utilise le fait que, si je suis sur le répertoire
C:\\Cool
et que j'appelle la commandeC:\\Cygwin\\bin\\mintty.exe
,mintty
s'ouvrira automatiquement sur le répertoire courant, c'est-à-direC:\\Cool
.Tout d'abord, vous devrez créer le fichier
C:\\Cygwin\\silent_run.vbs
avec le contenu suivant:Ensuite, pour installer cette réponse, vous utiliserez un fichier de registre Windows. Pour cela, il suffit de mettre le contenu du fichier suivant dans un fichier nommé
C:\\Cygwin\\AddMinttyToContextMenu.reg
Maintenant, corrigez tous les chemins codés en dur, c'est-
C:\\Cygwin
à- dire à l'emplacement réel où se trouve votre installation Cygwin.Ensuite, ouvrez simplement le fichier
C:\\Cygwin\\AddMinttyToContextMenu.reg
pour installer vos nouvelles entrées de registre et vous avez terminé.Le fichier
C:\\Cygwin\\AddMinttyToContextMenu.reg
fonctionne en ouvrant d'abord acmd.exe
, en changeant dans le répertoire où vous vous trouvez, puis en appelantC:\\Cygwin\\silent_run.vbs
pour ouvrir leC:\\Cygwin\\bin\\mintty.exe
terminal avec les options de ligne de commande-w max
, c'est-à-dire pour l'ouvrir maximisé.Le script
C:\\Cygwin\\silent_run.vbs
est nécessaire pour ouvrir leC:\\Cygwin\\bin\\mintty.exe
terminal sans garder le premier quecmd.exe
nous avons ouvert, ouvert.La première entrée de
C:\\Cygwin\\AddMinttyToContextMenu.reg
n'utilise pasC:\\Cygwin\\silent_run.vbs
car par défaut lesHKEY_CLASSES_ROOT\Directory\Background\shell
clés sont déjà ouvertes dans le répertoire courant, alors, on peut simplement appelerC:\\Cygwin\\bin\\mintty.exe
directement pour le faire fonctionner hors de la boîte.Références:
la source
Copiez les commandes ci-dessus dans un fichier texte et enregistrez-le sous .bat dans n'importe lequel de "votre dossier d'intérêt". Il devrait ouvrir cygwin dans "votre dossier d'intérêt".
la source
basé sur la réponse de @LindseyD J'ai créé un simple fichier BAT, qui ouvre cygwin dans le répertoire courant, il peut être utile (pour moi, c'est le cas). En supposant que vous avez le répertoire bin de cygwin dans PATH.
la source
Je ne sais pas pourquoi j'ai dû perdre autant de temps, mais cela fonctionne pour moi lors de la victoire 10, 64 bits:
la source
Probablement le plus simple:
1) Créez le fichier foo.reg
2) Insérez le contenu:
3) Exécutez foo.reg
Maintenant,
open mintty
faites un clic droit dans n'importe quel dossier, cliquez dessus et il apparaîtra dans ce dossier.la source
Mieux vaut faire comme ci-dessous:
la source