Quando um caminho Linux baseado em vinho é usado?

0

Em um post anterior, vejo apenas caminhos puros do Linux e caminhos puros do Windows são usados ao executar um executável do Windows em wine.

Quando um caminho do Linux baseado em vinho, como /home/t/.wine/dosdevices/z:/tmp/test/O.pdf , é usado?

winepath converte um caminho puro do Linux em um caminho do Linux baseado em vinho. Por exemplo,

$ echo "$(winepath /tmp/test/O.pdf)"
/home/t/.wine/dosdevices/z:/tmp/test/O.pdf

Quando a saída de winepath é usada?

Obrigado.

    
por Tim 23.03.2018 / 00:09

1 resposta

1

Pesquisando em winepath , há diferentes opções de configuração para isso.

Com relação a outra pergunta relacionada que você fez que eu respondi, você pode usar winepath para encontrar o caminho compatível com o Windows para uma determinada direção de caminho do Linux.

No entanto, o winepath só é realmente útil com argumentos específicos passados, já que os diferentes argumentos aceitos realmente dizem o que você está procurando.

winepath aceita vários argumentos úteis, dos quais -u e -w são mais úteis aqui. Isso é da página winepath da versão de desenvolvimento 3.4 do Wine:

OPTIONS
       -u, --unix
              converts a Windows path to a Unix path.

       -w, --windows
              converts a Unix path to a long Windows path.

Com isso em mente, podemos obter /tmp/test/0.pdf em um caminho útil do Windows. (Estou usando /tmp/blah.txt no meu exemplo)

Converta um caminho Unix em um caminho longo do Windows - o que você precisou fazer em sua outra pergunta - que, então, é algo que você pode passar para um executável do Windows e é baseado em winecfg mapeamento de unidade (leva alguns minutos para ser executado):

$ winepath -w /tmp/blah.txt
Z:\tmp\blah.txt

Converta um caminho longo do Windows em um caminho de arquivo Unix - o inverso do que você precisava fazer, mas o que é realmente útil se você tiver algo instalado na unidade Wine C:\ e precisar Caminho do arquivo Linux para o arquivo / executable / folder / etc. Isso ajuda se você precisar editar algo em um caminho que você não sabe onde ele está no disco, geralmente em ~/.wine/drive_c e tal porque há muitas coisas que você pode precisar de acesso direto a pastas. Para o seu exemplo, abaixo, isso não é muito útil, já que sabemos que intrinsecamente Z: está mapeado para / em seu sistema. No entanto, você pode acessar tecnicamente o arquivo pelo caminho completo do Wine Linux abaixo (o que funciona, porque ~/.wine/dosdevices/z: é na verdade apenas um link simbólico para / em sua configuração e o meu):

$ winepath -u 'Z:\tmp\test
OPTIONS
       -u, --unix
              converts a Windows path to a Unix path.

       -w, --windows
              converts a Unix path to a long Windows path.
.pdf' /home/teward/.wine/dosdevices/z:/tmp/test/0.pdf

Este parece ser o 'default' - ele pega o caminho do Windows e gera o equivalente do Linux para o caminho do arquivo do Windows em relação à instalação existente do Wine.

Então, TL; DR:

Seus principais casos de uso, portanto, são:

  • Para obter um caminho do sistema de arquivos Unix e obter o caminho do estilo do Windows em relação à configuração da unidade em seu prefixo de vinho; isso é o que você teria que digitar para obter a resposta na outra pergunta que você postou. (desde que você não pode usar caminhos Unix em argumentos dos executáveis do Windows, ou em um diálogo Abrir em um executável aberto pelo Wine, uma vez que eles precisam de caminhos de estilo do Windows)

  • Para obter um caminho do Windows baseado no Wine e obter o caminho correspondente do sistema de arquivos Linux, você pode interagir diretamente com o arquivo no sistema Linux padrão (já que não é possível usar caminhos do Windows no Unix para interagir com os arquivos no sistema operacional Ubuntu diretamente)

por Thomas Ward 23.03.2018 / 00:32