Um equivalente ao "aberto" do OS X no Cygwin?


11

Eu sei que essa pode ser uma pergunta um pouco estranha, além do fato de eu estar fazendo aqui. A razão é que sempre que pergunto às pessoas Windows sobre isso, ou mesmo aos usuários regulares do Cygwin, elas parecem não entender por que preciso dessa funcionalidade.

Para aqueles que não usaram "open" no shell no Mac OS X, funciona assim:

$ open somepic.jpg

$ open SomeFile.m

Portanto, ele analisa o programa padrão associado ao arquivo e o abre. Eu gostaria de fazer o mesmo de dentro do Cygwin. Todas as idéias seriam muito apreciadas!


Usando MobaXterm, o comando equivalente a Mac opené ... open. :) Eu não usei muito o Cygwin; Eu prefiro o MobaXterm.
Curinga

Respostas:


18
$ cygstart theFile.ext

Isso abrirá o arquivo.ext com o aplicativo padrão que você definiu para os arquivos .ext.


Exatamente o que eu precisava. Vai colocar um:
TK

2
alias = abertas 'cygstart' no meu .bashrc
TK

11
@TK: Doce. Sinta-se à vontade para retornar novamente se tiver mais problemas com o cygwin. Estou preso nas terras do Windows há muito tempo, então eu e Cygwin chegamos bem perto. Não somos amigos ... mas aprendemos a nos tolerar. ;)
unclejamil

4

Para completar, xdg-openno Linux desempenha praticamente o mesmo papel no lado Linux.


1

Como mencionado, a melhor maneira é provavelmente cygstart. Você pode adicionar um alias ao seu .bashrc (ou .zshrc ou o que for):

alias open='cygstart'

Mas você também pode fazer algumas coisas explorer.exe. Provavelmente não é tão bom quanto, cygstartmas se você tiver algum problema com essa abordagem (ou precisar usá-la com o shell bash do Git em vez do Cygwin), é uma opção a ter em mente.

Até agora, eu estava usando o shell bash que acompanha o Git para Windows e tive

alias open='explorer.exe'

no meu .bash_profile. Ele abriria diretórios no Windows Explorer e abriria arquivos no aplicativo padrão (pela definição do Windows de "padrão").

Mas tem limitações. Como o explorer.exe espera ser usado em um prompt do DOS (se houver alguma linha de comando), não espere que o globbing funcione. Se, por exemplo, você deseja abrir seu Gemfile, Vagrantfile, Cheffile e Rakefile de uma só vez e digitar

open *file

Você apenas terá uma janela do Windows Explorer. Não sei que lógica (!?) Está funcionando aqui. O explorer.exe provavelmente está apenas ignorando todos os argumentos, pois não sabe o que fazer com vários argumentos.

cygstart também não é muito inteligente, pois só abre o primeiro argumento quando passado vários argumentos, mas pelo menos abre um arquivo, em vez do diretório atual.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.