Adicionando Bash no Ubuntu no Windows 10 para o Menu de Contexto do Explorer (Problemas)

3

Eu adicionei com sucesso o prompt do Bash on Ubuntu ao menu de contexto adicionando as seguintes chaves de registro

[HKEY_CLASSES_ROOT\Directory\shell\bash]
@="Bash Here"
[HKEY_CLASSES_ROOT\Directory\shell\bash\command]
@="C:\Windows\System32\bash.exe"

Agora, a solução acima tem

duas questões principais uma questão que não sei como resolver.

O problema é que o caminho para o qual ele é lançado é, na verdade, o do diretório pai, e não o que está sendo clicado com o botão direito.

Eu tentei incluir argumentos adicionais no comando de inicialização, no entanto, que resulta no prompt sendo fechado imediatamente antes mesmo de ter a chance de ler qualquer informação de erro.

O comando padrão do atalho C:\Windows\System32\bash.exe ~ realmente funciona e me coloca em /home/user/

ATUALIZAÇÃO: Parece que a execução de C:\Windows\System32\bash.exe usa um conjunto de configurações armazenadas em [HKEY_CURRENT_USER\Console\%SystemRoot%_system32_bash.exe] , além de algumas (cores, por exemplo) da localização padrão [HKEY_CURRENT_USER\Console] , portanto, quando essas configurações são salvas, são recarregadas com êxito. Considerando que, o atalho criado na instalação parece usar as configurações atribuídas a cmd.exe (a ser confirmado)

UPDATE 2: Por favor, não ofereça soluções que envolvam o lançamento de bash.exe de dentro de cmd.exe

    
por Constantine 05.08.2016 / 06:47

2 respostas

2

Você pode encontrar um tutorial passo-a-passo sobre como fazer isso nesta página:

Além disso, eles oferecem arquivos de registro prontos para uso. Eu testei os arquivos de registro e eles funcionam no meu sistema Win10 x64.

    
por 07.10.2016 / 11:57
2

Uma solução fácil para isso é executar o cmd. Este comando define o diretório de trabalho atual para a pasta selecionada e, em seguida, inicia o bash.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\Bash]
@="Bash Here"

[HKEY_CLASSES_ROOT\Directory\shell\Bash\command]
@="C:\Windows\System32\cmd.exe /k cd %1 && C:\windows\system32\bash.exe"

Testado e funcionando, salve o código acima em um arquivo de texto e renomeie a extensão para .reg

Se você quiser sair depois, em vez de voltar ao CMD, basta digitar && exit no final do comando

    
por 05.08.2016 / 18:29