Você não define essa associação no seu .bash_profile
. Seu shell não sabe qual aplicativo do OS X abrir com um arquivo - é o Serviços de lançamento que cuidam disso.
A maneira mais fácil de alterar globalmente as associações de tipos de arquivos para determinados aplicativos é instalar o RCDefaultApp e definir tudo por meio de < em> Preferências do Sistema .
Em teoria, você também pode modificar o arquivo ~/Library/Preferences/com.apple.LaunchServices.plist
para associações personalizadas, mas eu não recomendaria ir até lá.
I want to associate all .txt files to TextMate so that when I shall open the file from the shell it would automatically launch TextMate and opens my file
Vá para um arquivo de texto, clique com o botão direito e selecione Abrir com… . Aqui, escolha TextMate e clique em Alterar tudo… .
Agora, sempre que você estiver no shell, você pode digitar:
open foo.txt
E isso abrirá o TextMate com o seu arquivo de texto. 1 O mesmo se aplica a qualquer outra associação que você possa definir através do RCDefaultApp ou da caixa de diálogo Obter Informações ... no Finder. A mágica por trás disso é que open
adiará a chamada para os Serviços de Lançamento, que então decidirão sobre o aplicativo a ser usado. 2
1: Na verdade, para o TextMate, o seguinte é suficiente: mate foo.txt
2: você também pode escolher manualmente um aplicativo, por exemplo, %código%. Leia open -a Xcode foo.txt
para mais.