Nota: O pacote chere pode precisar ser instanciado com privilégios de administrador. Se você é pego por isso e é tentado a usá- sudolo, pode não obter o resultado esperado. Nesse caso, efetue login como um usuário administrador na máquina Windows.
precisa saber é o seguinte
Respostas:
410
Quando você instala o Cygwin (ou se já o instalou, faça o download novamente e inicie a instalação novamente para executar uma atualização), certifique-se de selecionar o cherepacote na categoria "Conchas".
Depois Cygwin é iniciado, abra um terminal Cygwin (como administrador) e digite o comando: chere -i -t mintty -s bash.
Agora você deve ter "Bash Prompt Here" no menu de contexto do Windows.
( mintty é o terminal padrão do Cygwin. Se você não o escolher com a -topção, o "Bash Prompt Here" usará o mesmo terminal que o Windows Command Prompt, o que impede o redimensionamento horizontal.)
Achado impressionante, obrigado! Eu descobri que você pode especificar o terminal que deseja abrir utilizando -t, por exemplo, para mintty aberta você usachere -i -t mintty
Kevin Condon
29
Acabei de testar com o cygwin de 64 bits (1.7.27) e o chere parece existir agora. dica profissional: lembre-se de iniciar o terminal cygwin com privilégios de administrador.
BuildTheRobots
11
Mais uma coisa a se notar. Se você já fez isso chere -i -t mintty -fpara forçar a substituição. Você ainda precisará executar o cygwin como administrador também.
Greg Jennings
29
Teve problemas de permissão no W7x64 (Erro (5): acesso negado. Seção não gravável). Resolvido iniciando o Cygwin como administrador.
DmitrySandalov
17
Cygwin não tinha shell padrão no meu caso, assim que adicionar -s basha make chere -i -t mintty -s bashfeito este trabalho para mim
Bryce Guinta
97
Aqui está o que eu uso. Não requer chereconserto de pacotes ou registros. Funciona no Windows 7.
Um truque muito bom, mas o winxalias não funcionou na minha configuração do Cygwin. Eu tive que remover as duas barras invertidas e substituir .por $PWDpara que funcionasse.
Not2qubit
E se o atalho (adaptado para usar o caminho Cygwin64 da minha instalação) abrir o cygwin na minha pasta de usuário? :( Talvez isso funcione apenas com Cygwin de 32 bits? #
Alex Hall
Este também está trabalhando para mimalias winx='/cygdrive/c/Windows/explorer.exe /e,$(cygpath -wa .)'
Wakan Tanka
1
Em cygwin 2.6.0 (no Win 7 x64) que pode ser feito muito mais fácil: cygstart .para abrir Explorer com a pasta atual, ou qualquer sintaxe pasta cygstart .., cygstart /your/pathetc ...
244an
2
Aviso: C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico C:\cygwin\bin\bash.exe -l -c "cd \"$0\" ; exec bashmantém o identificador de arquivo aberto no $0diretório, mesmo depois de alterar o diretório de trabalho para outra coisa. O que é pior: a cópia inicial da janela ( ALT+F2), mesmo quando você já mudou o diretório de trabalho, abre outro identificador de arquivo $0. Isso pode interferir em algumas operações que podem ser excluídas / modificadas $0em qualquer processo. Se você ficar 'Permissão negada' erro ao acessar $0esta pode ser a causa
mate
33
No terminal cygwin, execute este comando:
echo "cd your_path" >> ~/.bashrc
O script .bashrc é executado quando você abre uma nova sessão do bash. O código acima com a alteração no diretório your_path quando você abre uma nova sessão do cygwin.
Esta não é a resposta, porque não cria um atalho que usa o diretório mencionado, conforme exigido pela pergunta, mas altera o comportamento de todos os métodos de iniciar o shell Cygwin. Você não deve alterar uma configuração global (ou perfil de logon) para resolver um problema local.
Ben Voigt
Uma vez, usei exatamente esse método para anexar um usuário ao arquivo de senhas, deixando acidentalmente um dos >caracteres. Então eu saí :-)
paxdiablo 15/10
@paxdiablo ouch
bschwagg
30
Eu criei um arquivo .reg que coloca uma opção "Open Cygwin Here" no menu de contexto do botão direito do mouse. Depende do pacote "chere" do Cygwin, que você pode instalar usando o apt-cyg se não o instalou na configuração inicial.
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"
Para quem está se perguntando como usar isso, basta copiar o texto em plano de fundo cinza e colocá-lo em um arquivo de texto chamado "foo.reg" e clicar duas vezes nele.
Andrew Moylan 28/08
3
+1 na melhor solução aqui. E obrigado por mencionar apt-cyg, eu não sabia sobre essa ferramenta.
user11153
Era exatamente isso que eu estava procurando e até me ajudou em outras coisas, porque nem o site da Microsoft me deu o mesmo resultado.
FilBot3
Eu tive que mudar para "cygwin", mas recebo o seguinte erro: "Falha ao executar o / bin / xhere: não existe esse arquivo ou diretório"
Totty.js 28/10/2015
@ Totty.js tem certeza de que instalou o pacote 'chere' no Cygwin?
21816 Jeutnarg
17
Para cygwin64 ou instalações sem chere, você pode usar o seguinte comando em uma entrada do registro (assumindo janelas devido ao seu caminho, assumindo também que o diretório de instalação do cygwin seja c: \ cygwin64)
Você pode explicar por que você tem 3 (x2) entradas de registro?
Not2qubit
1
eles são para contextos de diretório, unidade e plano de fundo
Tom Kay
Finalmente, uma solução que funcionou para mim, embora eu tenha alguns problemas para entendê-la completamente ;-) [o 'bash' depois de 'exec bash']. Dica: você pode substituir as 3 entradas por 1: 'Pasta' em vez de 'Diretório', 'Unidade' e 'Plano de fundo'.
t0r0X
com apenas 'Pasta', o link aparece no menu de contexto de uma unidade, mas falha na execução. No entanto, tenho sido capaz de reduzir para 2 entradas com 'Pasta' e 'Directory \ Background'
Tom Kay
1
Para emacs: "C: \\ cygwin \\ bin \\ mintty.exe -i /Cygwin-Terminal.ico / bin / bash -l -c 'emacs \" cygpath \"%V\"\ ";'"
Jan Matousek
12
Se você deseja ter esse diretório como padrão, basta adicionar uma cdinstrução ao seu ~/.profilearquivo.
O que costumo fazer é usar esse método para definir meu diretório usual, além de definir aliases para meus casos comuns:
alias tom="cd /users/tom"
ou seu equivalente. Isso me permite alterar diretórios muito rapidamente.
Esse alias também precisa ser adicionado ao ~/.profilearquivo ou apenas ser executado uma vez?
iono 18/03/2013
2
@ Tomomeom, se você apenas executar isso dentro de um shell, isso afetará apenas esse shell. Não afetará nenhuma outra pessoa iniciada. Portanto, se você deseja que ele esteja sempre disponível, é necessário colocá-lo em um dos arquivos de inicialização (dos quais ~/.profileé uma possibilidade).
precisa
não funcionou para mim quando colocado em ~ / .profile, mas ~ / .bashrc funcionou.
zupa
@zupa, as regras sobre quais arquivos de inicialização são originados são razoavelmente complicadas (embora esteja tudo lá na bashpágina de manual, se você se aprofundar o suficiente). Por isso afirmei .profilecomo uma possibilidade.
22413
.profile finalmente origina .bashrc, portanto, você pode querer anexar esse comando ao bashrc. (.profile não funcionou para mim)
Laertis
8
Eu uso o Icon para iniciar o cygwin sem o cherepacote.
Crie um atalho na minha área de trabalho para o terminal cygwin.
Clique com o botão direito do mouse no ícone e selecione Propriedades.
Na guia de atalho, use isto para o TARGET:
C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
Para INICIAR, coloque o caminho da pasta dir / onde você deseja iniciar o cygwin. ieC:\some\dir\name\here
ok 2 coisas 1. anexar -cem "Target" não faz diferença, desde que você forneça um caminho em "Start In" 2. esta solução cria um problema PATH. O cygwin falha ao anexar /usr/local/bin:/usr/binno PATH do sistema deixando incapaz de chamar alguns de seus binários. A configuração provavelmente reside em /etc/profile>> `if [$ {CYGWIN_NOWINPATH-addwinpath} =" addwinpath "]; então `
laertis 13/10
8
Como o two7s_clash disse, você primeiro precisa instalar o cherepacote e configurar o mintty:
Abra o terminal Cygwin como administrador
apt-cyg install chere
chere -i -t mintty
Agora você pode abrir o cygwin em um diretório específico com o botão direito do mouse no Windows Explorer (menu de contexto) e selecionar "Bash Prompt Here".
Você também pode abrir o cygwin a partir de um diretório específico usando o prompt de comando do Windows:
Para criar um atalho do Windows que inicia um terminal Cygwin em um diretório de sua escolha, tente o seguinte:
Clique com o botão direito na área de trabalho do Windows, selecione 'Novo' e, em seguida, selecione 'Atalho'.
Para a localização do item, digite o texto a seguir, alterando o minttycaminho conforme necessário e substituindo o nome do diretório desejado, onde indicado.
Quando uma nova instalação é necessária, eu crio uma "variável de ambiente do usuário" do Windows denominada HOMEe atribuo o caminho aonde quer que "Meus Documentos" residam.
O instalador do cygwin detecta a HOMEvariável, converte automaticamente isso em um caminho de cygpath e seleciona como o meu ~ diretório.
Isso funcionou bem em todas as estações de trabalho que usei profissionalmente nos últimos 5 anos (cerca de 3 ou 4, Win7). Eu sempre fui o único usuário nessas máquinas, não posso dizer qual é o efeito.
Isso fornecerá a ajuda para aqueles que não têm hortelã no sistema e obtêm erros ao tentar tentar a solução fornecida acima. Também segui a solução fornecida acima, mas ela não funcionou na minha máquina Windows, mas minha resposta resolveu o problema.
user3065757
1
Você pode simplesmente abrir o terminal cygwin e escrever: cd e depois arrastar e soltar a pasta que deseja e depois entrar!
Embora isso não resolva completamente a questão, é uma dica muito útil. Obrigado.
RoG
1
Na resposta que usa o registro, descobri que no Windows 2008 R2 SP1, você precisa excluir o plano de fundo do caminho. Além disso, como chere e xhere não fazem parte do cygwin64, aqui está uma solução que funciona para ambos, combinando o registro e as soluções Enviar para. Substitua 'E: \ cygwin64' pelo seu local de instalação:
Eu criei o arquivo em lotes e o coloquei no diretório / bin do Cygwin. Este script foi desenvolvido para permitir instalar / desinstalar as entradas do Registro para abrir pastas e unidades selecionadas no Cygwin. Para detalhes, consulte o link http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html .
atualização: Esta solução faz o mesmo que as sugestões anteriores, mas todas as manipulações com o Registro do Windows estão ocultas no script.
Eu também tive um problema com o git, que costumava "roubar" meus comandos do cygwin - então eu precisava executar, C:\cygwin\bin\mintty.exe -
mas depois de instalar cheree executar chere -i -t mintty -f como administrador (veja acima), você pode simplesmente usar: C:\cygwin\bin\mintty.exe -e /bin/xhere /bin/bash.exe "."
eu adicionei isso no Total Commander como botão personalizado (à direita) clique no painel> adicionar ...) e funciona muito bem.
Criar um arquivo bash digamos move.shque tenha o seguinte código
C:\cygwin64\bin\run.exe -p /bin bash runFile.sh
Isso inicia o Cygwin e executa o runFile.shpresente no diretório bin do Cygwin Suponha que você queira navegar para um diretório específico, digamos E:\code
que runFile.sh tenha o seguinte códigocd E:
cd code
Finalmente, uma resposta independente do próprio Cygwin.
Isso usa o fato de que, se eu estiver no diretório C:\\Coole chamar o comando C:\\Cygwin\\bin\\mintty.exe, minttyserá aberto automaticamente no diretório atual, ou seja C:\\Cool,.
Primeiro, você precisará criar o arquivo C:\\Cygwin\\silent_run.vbscom o seguinte conteúdo:
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
Em seguida, para instalar esta resposta, você usará um arquivo de registro do Windows. Para isso, basta colocar o conteúdo do seguinte arquivo em um arquivo chamadoC:\\Cygwin\\AddMinttyToContextMenu.reg
Agora, corrija todos os caminhos codificados, ou seja, C:\\Cygwinno local real em que sua instalação do Cygwin está.
Em seguida, basta abrir o arquivo C:\\Cygwin\\AddMinttyToContextMenu.regpara instalar suas novas entradas do registro e pronto.
O arquivo C:\\Cygwin\\AddMinttyToContextMenu.regfunciona abrindo primeiro a cmd.exe, mudando para o diretório em que você está e, em seguida, chamando C:\\Cygwin\\silent_run.vbspara abrir o C:\\Cygwin\\bin\\mintty.exeterminal com as opções da linha de comando-w max , ou seja, para maximizá-lo.
O script C:\\Cygwin\\silent_run.vbsé necessário para abrir o C:\\Cygwin\\bin\\mintty.exeterminal sem manter o primeiro cmd.exeque abrimos, aberto.
A primeira entrada de C:\\Cygwin\\AddMinttyToContextMenu.regnão é usada C:\\Cygwin\\silent_run.vbsporque, por padrão, as HKEY_CLASSES_ROOT\Directory\Background\shellchaves já estão abertas no diretório atual, então podemos apenas ligar C:\\Cygwin\\bin\\mintty.exediretamente para que funcione imediatamente.
@echo off
C:
SET mypath=%~dp0
c:\cygwin\bin\bash -c "cd '%mypath%'; export CHERE_INVOKING=1; exec /bin/bash --login -i"
Copie os comandos acima em um arquivo de texto e salve-o como .bat em qualquer uma das "suas pastas de interesse". Ele deve abrir o cygwin em "sua pasta de interesse".
Com base na resposta @LindseyD, criei um arquivo BAT simples, que abre o cygwin no diretório atual, pode ser útil (para mim é). Supondo que você tenha o diretório bin do cygwin no PATH.
FOR /F %%x IN ('sh -c pwd') DO bash -l -i -c 'cd %%x; exec bash'
sudo
lo, pode não obter o resultado esperado. Nesse caso, efetue login como um usuário administrador na máquina Windows.Respostas:
Quando você instala o Cygwin (ou se já o instalou, faça o download novamente e inicie a instalação novamente para executar uma atualização), certifique-se de selecionar o
chere
pacote na categoria "Conchas".Depois Cygwin é iniciado, abra um terminal Cygwin (como administrador) e digite o comando:
chere -i -t mintty -s bash
.Agora você deve ter "Bash Prompt Here" no menu de contexto do Windows.
( mintty é o terminal padrão do Cygwin. Se você não o escolher com a
-t
opção, o "Bash Prompt Here" usará o mesmo terminal que o Windows Command Prompt, o que impede o redimensionamento horizontal.)fonte
-t
, por exemplo, para mintty aberta você usachere -i -t mintty
chere -i -t mintty -f
para forçar a substituição. Você ainda precisará executar o cygwin como administrador também.-s bash
a makechere -i -t mintty -s bash
feito este trabalho para mimAqui está o que eu uso. Não requer
chere
conserto de pacotes ou registros. Funciona no Windows 7.Vá para a pasta "Enviar para":
Crie um atalho chamado
Bash Here
tendo isso noTarget
campo:No Windows Explorer, clique com o botão direito do mouse em uma pasta e selecione
Send To > Bash Here
.E aqui está o truque oposto: abrir um Windows Explorer no seu diretório bash atual. Crie este alias:
Nota: a
cygpath -w .
parte acima é colocada em back-ticks.Agora, basta digitar
winx
no prompt do bash e um Win Explorer aparece lá.Nota: Se o winx o direcionar para a pasta de documentos, tente
fonte
winx
alias não funcionou na minha configuração do Cygwin. Eu tive que remover as duas barras invertidas e substituir.
por$PWD
para que funcionasse.alias winx='/cygdrive/c/Windows/explorer.exe /e,$(cygpath -wa .)'
cygstart .
para abrir Explorer com a pasta atual, ou qualquer sintaxe pastacygstart ..
,cygstart /your/path
etc ...C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico C:\cygwin\bin\bash.exe -l -c "cd \"$0\" ; exec bash
mantém o identificador de arquivo aberto no$0
diretório, mesmo depois de alterar o diretório de trabalho para outra coisa. O que é pior: a cópia inicial da janela (ALT+F2
), mesmo quando você já mudou o diretório de trabalho, abre outro identificador de arquivo$0
. Isso pode interferir em algumas operações que podem ser excluídas / modificadas$0
em qualquer processo. Se você ficar 'Permissão negada' erro ao acessar$0
esta pode ser a causaNo terminal cygwin, execute este comando:
echo "cd your_path" >> ~/.bashrc
O script .bashrc é executado quando você abre uma nova sessão do bash. O código acima com a alteração no diretório your_path quando você abre uma nova sessão do cygwin.
fonte
>
caracteres. Então eu saí :-)Eu criei um arquivo .reg que coloca uma opção "Open Cygwin Here" no menu de contexto do botão direito do mouse. Depende do pacote "chere" do Cygwin, que você pode instalar usando o apt-cyg se não o instalou na configuração inicial.
fonte
apt-cyg
, eu não sabia sobre essa ferramenta.Para cygwin64 ou instalações sem chere, você pode usar o seguinte comando em uma entrada do registro (assumindo janelas devido ao seu caminho, assumindo também que o diretório de instalação do cygwin seja c: \ cygwin64)
Funciona no arquivo de registro do Windows 7 e 8 disponível para download aqui: http://tomkay.me/blog/Cygwin64---Open-Here-18
fonte
cygpath \"%V\"
\ ";'"Se você deseja ter esse diretório como padrão, basta adicionar uma
cd
instrução ao seu~/.profile
arquivo.O que costumo fazer é usar esse método para definir meu diretório usual, além de definir aliases para meus casos comuns:
ou seu equivalente. Isso me permite alterar diretórios muito rapidamente.
fonte
~/.profile
arquivo ou apenas ser executado uma vez?~/.profile
é uma possibilidade).bash
página de manual, se você se aprofundar o suficiente). Por isso afirmei.profile
como uma possibilidade.Eu uso o Icon para iniciar o cygwin sem o
chere
pacote.C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
C:\some\dir\name\here
fonte
-c
em "Target" não faz diferença, desde que você forneça um caminho em "Start In" 2. esta solução cria um problemaPATH
. O cygwin falha ao anexar/usr/local/bin:/usr/bin
no PATH do sistema deixando incapaz de chamar alguns de seus binários. A configuração provavelmente reside em/etc/profile
>> `if [$ {CYGWIN_NOWINPATH-addwinpath} =" addwinpath "]; então `Como o two7s_clash disse, você primeiro precisa instalar o
chere
pacote e configurar o mintty:apt-cyg install chere
chere -i -t mintty
Agora você pode abrir o cygwin em um diretório específico com o botão direito do mouse no Windows Explorer (menu de contexto) e selecionar "Bash Prompt Here".
Você também pode abrir o cygwin a partir de um diretório específico usando o prompt de comando do Windows:
cd
) para o diretório personalizadoExecutar
C:\cygwin64\bin\mintty.exe C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l
Este comando abrirá o cygwin com o diretório atual obtido no prompt de comando.
FreeCommander
Este comando também pode ser usado para abrir o cygwin a partir do gerenciador de arquivos personalizado, como o FreeCommander.
Para abrir o cygwin com o diretório atual retirado do FreeCommander, faça o seguinte:
Adicionar uma nova barra de ferramentas (+ Ícone), Atalho: Inserir
C:\cygwin64\bin\mintty.exe
%ActivDir%
C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l
Você pode adicionar um atalho personalizado para abrir o cygwin no FreeCommander:
Ótima referência: Wiki do MinTTY, artigo Dicas: Iniciando em um diretório específico
fonte
Para criar um atalho do Windows que inicia um terminal Cygwin em um diretório de sua escolha, tente o seguinte:
Clique com o botão direito na área de trabalho do Windows, selecione 'Novo' e, em seguida, selecione 'Atalho'.
Para a localização do item, digite o texto a seguir, alterando o
mintty
caminho conforme necessário e substituindo o nome do diretório desejado, onde indicado.Por exemplo, o OP usaria o seguinte texto:
Clique em 'Next'.
Digite o nome desejado para o atalho e clique em 'Concluir'.
Vários atalhos podem ser colocados na área de trabalho para abrir os terminais Cygwin em vários diretórios frequentemente acessados.
Inspirado na solução publicada em Como abrir um shell Cygwin em um diretório específico do Netbeans? em superuser.com .
fonte
Encontre o arquivo Cygwin.bat e crie conteúdo assim:
Adicione o caminho ao cygwin.bat no ambiente PATH.
Agora, em qualquer pasta, você pode digitar na barra de endereço:
Além disso, você pode digitá-lo quando estiver no cmd.exe
fonte
Usei as seguintes linhas de código para iniciar o zsh no diretório atual do Win7.
observe que eu usei% V em vez de% L ou% 1 (já que ambos não funcionaram para mim)
fonte
Quando uma nova instalação é necessária, eu crio uma "variável de ambiente do usuário" do Windows denominada
HOME
e atribuo o caminho aonde quer que "Meus Documentos" residam.O instalador do cygwin detecta a
HOME
variável, converte automaticamente isso em um caminho de cygpath e seleciona como o meu ~ diretório.Isso funcionou bem em todas as estações de trabalho que usei profissionalmente nos últimos 5 anos (cerca de 3 ou 4, Win7). Eu sempre fui o único usuário nessas máquinas, não posso dizer qual é o efeito.
fonte
Eu criei um script de edição do registro para abrir o Cygwin em qualquer pasta que você clicar com o botão direito. Está no meu GitHub.
Aqui está o meu GitHub
RegEdit
Código de exemplo do Github para máquinas de 64 bits:fonte
Abra o terminal Cygwin como administrador
No PowerShell (usando chocolate):
No cygwin irá instalar o menu do botão direito
Agora você pode clicar com o botão direito e usar "Bash Prompt Here" em qualquer pasta.
fonte
Você pode adicionar o ícone ao shell adicionando um
Icon
campo definido ao caminho do seuCygwin.ico
arquivo.fonte
Na minha máquina Windows, não era necessário:
chere -i -t mintty
Como o shell mintty não estava disponível, você pode escolher vários outros shells, como ash bash cmd dash mksh pdksh posh tcsh zsh passwd.
então eu usei:
chere -i -s bash
fonte
Você pode simplesmente abrir o terminal cygwin e escrever: cd e depois arrastar e soltar a pasta que deseja e depois entrar!
fonte
Na resposta que usa o registro, descobri que no Windows 2008 R2 SP1, você precisa excluir o plano de fundo do caminho. Além disso, como chere e xhere não fazem parte do cygwin64, aqui está uma solução que funciona para ambos, combinando o registro e as soluções Enviar para. Substitua 'E: \ cygwin64' pelo seu local de instalação:
fonte
Esta é a única solução de registro Cygwin64 que funcionou para mim no Windows 8.1:
Certifique-se de modificar o caminho 'C: \ cygwin64' conforme necessário.
fonte
Eu criei o arquivo em lotes e o coloquei no diretório / bin do Cygwin. Este script foi desenvolvido para permitir instalar / desinstalar as entradas do Registro para abrir pastas e unidades selecionadas no Cygwin. Para detalhes, consulte o link http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html .
atualização: Esta solução faz o mesmo que as sugestões anteriores, mas todas as manipulações com o Registro do Windows estão ocultas no script.
Execute o comando para instalar
Execute o comando para desinstalar
fonte
Eu também tive um problema com o git, que costumava "roubar" meus comandos do cygwin - então eu precisava executar,
C:\cygwin\bin\mintty.exe -
mas depois de instalar
chere
e executarchere -i -t mintty -f
como administrador (veja acima), você pode simplesmente usar:C:\cygwin\bin\mintty.exe -e /bin/xhere /bin/bash.exe "."
eu adicionei isso no Total Commander como botão personalizado (à direita) clique no painel> adicionar ...) e funciona muito bem.
fonte
Criar um arquivo bash digamos
move.sh
que tenha o seguinte códigoC:\cygwin64\bin\run.exe -p /bin bash runFile.sh
Isso inicia o Cygwin e executa orunFile.sh
presente no diretório bin do Cygwin Suponha que você queira navegar para um diretório específico, digamosE:\code
que runFile.sh tenha o seguinte códigocd E: cd code
fonte
Finalmente, uma resposta independente do próprio Cygwin.
Isso usa o fato de que, se eu estiver no diretório
C:\\Cool
e chamar o comandoC:\\Cygwin\\bin\\mintty.exe
,mintty
será aberto automaticamente no diretório atual, ou sejaC:\\Cool
,.Primeiro, você precisará criar o arquivo
C:\\Cygwin\\silent_run.vbs
com o seguinte conteúdo:Em seguida, para instalar esta resposta, você usará um arquivo de registro do Windows. Para isso, basta colocar o conteúdo do seguinte arquivo em um arquivo chamado
C:\\Cygwin\\AddMinttyToContextMenu.reg
Agora, corrija todos os caminhos codificados, ou seja,
C:\\Cygwin
no local real em que sua instalação do Cygwin está.Em seguida, basta abrir o arquivo
C:\\Cygwin\\AddMinttyToContextMenu.reg
para instalar suas novas entradas do registro e pronto.O arquivo
C:\\Cygwin\\AddMinttyToContextMenu.reg
funciona abrindo primeiro acmd.exe
, mudando para o diretório em que você está e, em seguida, chamandoC:\\Cygwin\\silent_run.vbs
para abrir oC:\\Cygwin\\bin\\mintty.exe
terminal com as opções da linha de comando-w max
, ou seja, para maximizá-lo.O script
C:\\Cygwin\\silent_run.vbs
é necessário para abrir oC:\\Cygwin\\bin\\mintty.exe
terminal sem manter o primeirocmd.exe
que abrimos, aberto.A primeira entrada de
C:\\Cygwin\\AddMinttyToContextMenu.reg
não é usadaC:\\Cygwin\\silent_run.vbs
porque, por padrão, asHKEY_CLASSES_ROOT\Directory\Background\shell
chaves já estão abertas no diretório atual, então podemos apenas ligarC:\\Cygwin\\bin\\mintty.exe
diretamente para que funcione imediatamente.Referências:
fonte
Copie os comandos acima em um arquivo de texto e salve-o como .bat em qualquer uma das "suas pastas de interesse". Ele deve abrir o cygwin em "sua pasta de interesse".
fonte
Com base na resposta @LindseyD, criei um arquivo BAT simples, que abre o cygwin no diretório atual, pode ser útil (para mim é). Supondo que você tenha o diretório bin do cygwin no PATH.
fonte
Não sei por que perdi tanto tempo, mas isso funciona para mim na vitória 10, 64 bits:
fonte
Provavelmente o mais simples:
1) Crie o arquivo foo.reg
2) Inserir conteúdo:
3) Execute foo.reg
Agora, basta clicar com o botão direito do mouse em qualquer pasta, clique
open mintty
e ele gerará um sinal de menta nessa pasta.fonte
Melhor fazer como abaixo:
fonte