Execute o aplicativo do Windows a partir do Ubuntu no Windows

0

Estou usando o bash no Ubuntu no Windows. Eu naveguei para uma pasta e, a partir daí, gostaria de abrir um arquivo em um programa do Windows.

Por exemplo: depois de entrar

cd \mnt\c\Users\myusername\Desktop
notepad index.php

Eu gostaria que o Bloco de notas no Windows abrisse o arquivo index.php da minha área de trabalho.

Isso é possível? Se não, é possível fazer um programa que torne isso possível? Como fazer isso?

    
por Draex_ 30.06.2016 / 16:32

4 respostas

1

Hoje em dia, você pode invocar aplicativos do Windows a partir do WSL , tanto dos scripts do Linux quanto do console.

  • A partir do Windows 10 build 17063+, tanto o Linux quanto o Windows podem compartilhar variáveis de ambiente.
  • Por padrão, o Windows compartilha o PATH . Se o notepad estiver no caminho do Windows, você poderá executá-lo no Linux chamando o programa na linha de comando.
  • Você pode controlar quais variáveis são compartilhado entre o Windows e o Linux . Existe uma variável WSLENV que define como as variáveis são compartilhadas.

Observe que modificar arquivos linux do Windows pode produzir erros ao atualizar as permissões e outros metadados . As permissões de arquivo do Linux são armazenadas como Fluxos (metadados) nos arquivos NTFS. Os programas do Windows podem substituir (ou danificar) esses dados sem notá-lo.

  • A Microsoft recomenda armazenar arquivos compartilhados no sistema de arquivos do Windows e, por exemplo, criar links simbólicos do linux.
  • Você pode verificar soluções e soluções alternativas no relatório de problemas da WSL
por 29.07.2018 / 07:27
1

Não é possível no momento, mas isso é o recurso mais solicitado no UserVoice .

Reação da Microsoft:

We hear ya – this is a common request and one we’ll be exploring for future releases.

    
por 27.07.2016 / 19:20
1

Isso pode ser possível:

  1. Defina um alias ou uma função no seu ~/.bash_aliases ou ~/.bashrc para um nome de comando como win ou windows .

  2. Digitar nosso novo comando criaria um arquivo de texto em alguma pasta acessível pelo Windows.

  3. Crie um script em lote que seja executado em segundo plano. Esse script executaria o comando no arquivo de texto (os argumentos do nosso comando recém-criado redirecionariam para esse arquivo) sempre que for criado e, em seguida, o excluirá.

Eu não tenho a atualização, então não posso fornecer os scripts no momento.

    
por 08.08.2016 / 05:10
0

Eu não acho que isso seja possível.
Bash no Ubuntu no Windows não é uma linha de comando do Windows, por isso não pode reconhecer os comandos do Windows. Experimente nano index.php .

Se você quiser uma GUI, pode instalar e executar o XMing Server no Windows, export DISPLAY=localhost:0.0 e instalar o gedit. Assim pode executar com uma GUI. Mas ainda não será notepad.exe. Isso é impossível até que possamos encontrar acesso aos arquivos do subsistema.

Outra maneira é copiar o arquivo para sua unidade C e acessá-lo no Windows. Para fazer isso, tente algo como cp index.php /mnt/c

    
por 10.07.2016 / 09:59