Como posso abrir uma janela do Terminal diretamente do meu local atual do Finder?
111
Eu queria saber se havia algum, eu poderia clicar com o botão direito do mouse dentro de qualquer instância da janela "Finder", de modo que eu tenha uma opção que diz "Open Terminal Here". Seria realmente útil.
esse site deve ser um local mais apropriado para perguntar
ericn
Respostas:
134
No Mac OS X Lion 10.7, o Terminal fornece serviços para abrir uma nova janela ou guia do terminal na pasta selecionada no Finder. Eles também trabalham com nomes de caminho absolutos selecionados no texto (em qualquer aplicativo). Você pode ativar esses serviços em Preferências do sistema> Teclado> Atalhos do teclado> Serviços . Procure por "Novo terminal na pasta" e "Guia Novo terminal na pasta". Você também pode atribuir a eles teclas de atalho.
Além disso, agora você pode arrastar pastas (e nomes de caminho) para o ícone do aplicativo Terminal para abrir uma nova janela do terminal ou para uma barra de guias da janela do terminal para criar uma nova guia nessa janela. Se você arrastar para uma guia (e não para a visualização do terminal), ele executará um cdcomando completo para alternar para esse diretório sem nenhuma digitação adicional.
A partir do OS X Mountain Lion 10.8, arrastar comandos em um terminal também executará um cdcomando completo .
Nota: O serviço Novo terminal na pasta será ativado quando você selecionar uma pasta no Finder . Você não pode simplesmente abrir a pasta e executar o serviço "no local". Volte para a pasta pai, selecione a pasta relevante e ative o serviço através do menu Serviços ou menu de contexto.
"Além disso, agora você pode arrastar pastas (e nomes de caminho) para o ícone do aplicativo Terminal para abrir uma nova janela do terminal" - você está brincando comigo? Fantástico! :)
phil
3
No Mavericks 10.9.4 - os atalhos não funcionam para mim. Obrigado por Drag and Drop dica :)
amar
1
@amar Você poderia compartilhar conosco o que fez? Também quebrado para mim em 10.10
OJFord 4/14
2
@Olive - depois que eu atualizar para Yesomite atalhos não trabalharam para mim :(
amar
4
Uma coisa que notei, e isso é com o El Capitan, é que você precisa selecionar a pasta no Finder (clique uma vez na pasta que vê dentro do Finder). A maneira que eu esperava que isso funcionasse é que ele abriria uma janela do Terminal na pasta atual. Na verdade, você precisa selecionar a pasta dentro da janela.
#
19
A solução para seus problemas é chamada Go2Shell e faz exatamente o que você está descrevendo. Você pode encontrá-lo na App Store e o melhor de tudo ... é totalmente gratuito.
Se você deseja usar o iTerm com o Go2Shell, consulte esta resposta para exibir as preferências . Ou, em resumo, digite open -a Go2Shell --args configpara abrir a configuração.
Jeromy Anglim
@jherran parece ser ok agora
Colas
1
A versão mais recente não pode ser instalada pela App Store, mas pelo site zipzapmac.com/Go2Shell ou por brew cask install go2shell.
Fiedl
eu era capaz de instalar a última versão, v1.2.2 da loja da Apple / iTunes App, funcionando perfeitamente bem
computingfreak
14
Uma abordagem diferente: o DTerm , que fornece um prompt de comando flutuante na parte superior da janela. Isso funciona em muitos aplicativos, não apenas no Finder.
O cdto parece que é exatamente o que você precisa. É um miniaplicativo, projetado para ser colocado na barra de ferramentas do Finder. Quando você o executa, ele abre uma janela de terminal e cdo diretório atual no Finder.
Para aqueles que usam o iTerm, a sintaxe AppleScript mudou na versão 3. do iTerm. Aqui está o procedimento completo a seguir para criar um atalho no Finder.
Inicie o Automator.
Selecione "Aplicativo":
Escolha "executar o Applescript":
Cole o código abaixo:
-- get the current directory inFinder
on run {input, parameters}
tell application "Finder"set _cwd to quoted form of (POSIX path of (folder of the front window as alias))
end tell
CD_to(_cwd)
end run
-- change directory in iTerm (version >=3)
on CD_to(_cwd)
tell application "iTerm"
activate
try
set _window to first window
on error
set _window to (create window with profile "Default")
end try
tell _window
tell current session
write text "cd "& _cwd &";clear;"
end tell
end tell
end tell
end CD_to
Clique em "Arquivo" -> "Exportar" para exportar como um .app, salve-o no /Applications.
Mova o aplicativo para a barra de ícones do Finder enquanto mantém pressionado ⌘:
Feito !
Você pode alterar o ícone no Finder seguindo as instruções aqui (altere o ícone do aplicativo que você criou com o Automator).
cf(){
cd "$(osascript -e 'tell app "Finder" to POSIX path of (insertion location as alias)')"}
Você também pode atribuir um atalho a um script como os abaixo.
Reutilize uma guia existente ou crie uma nova janela (Terminal):
tell application "Finder" to set p to POSIX path of (insertion location as alias)
tell application "Terminal"if(exists window 1) and not busy of window 1thendo script "cd "& quoted form of p in window 1elsedo script "cd "& quoted form of p
end if
activate
end tell
Reutilize uma guia existente ou crie uma nova guia (Terminal):
tell application "Finder" to set p to POSIX path of (insertion location as alias)
tell application "Terminal"if not (exists window 1)then reopen
activate
if busy of window 1then
tell application "System Events" to keystroke "t" using command down
end ifdo script "cd "& quoted form of p in window 1
end tell
Sempre crie uma nova guia (iTerm 2):
tell application "Finder" to set p to POSIX path of (insertion location as alias)
tell application "iTerm"if exists current terminal then
current terminal
else
make new terminal
end if
tell (launch session "Default") of result to write text "cd "& quoted form of p
activate
end tell
Os dois primeiros scripts têm algumas vantagens em comparação com os serviços adicionados na versão 10.7:
A partir da versão 10.9, existe um erro no qual os serviços que recebem pastas como entrada nunca são listados no menu de serviços na visualização de colunas. Se você atribuir um atalho de teclado ao serviço Nova Guia Terminal na Pasta, ele não funcionará na exibição de coluna.
Eles usam a pasta na barra de título em vez de exigir que você selecione uma pasta primeiro.
Eles reutilizam a guia mais à frente, se não estiver ocupada, por exemplo, executando um comando, exibindo uma página de manual ou executando o emacs.
Se você usa 10.7 ou 10.8, altere tell application "Finder" to set p to POSIX path of (insertion location as alias)para:
tell application "Finder"if exists Finder window 1thenset p to POSIX path of (target of Finder window 1 as alias)elseset p to POSIX path of (path to desktop)
end if
end tell
Há um erro nas versões 10.7 e 10.8 (mas não nas 10.9 ou 10.6) em que o Finder ignora as janelas criadas após a última vez que o foco foi movido para outro aplicativo e retornado ao obter a insertion locationpropriedade.
Você pode arrastar qualquer arquivo ou pasta do localizador para uma janela do Terminal para inserir uma sequência do referido arquivo ou caminho absoluto da pasta.
Isso funcionará em qualquer instalação padrão (pelo menos até 10.4 Tiger [ talvez mais cedo? ]), Sem a necessidade de software adicional, nossas modificações de preferências, uma das quais poderá mais tarde assustar seu amigo não-techy se ele for seu Mac no qual você está trabalhando. Este truque também funciona para qualquer processo que esteja sendo executado no Terminal, por exemplo, emacs ou vi (supondo que você tenha o vi no modo apropriado, ou seja, as pessoas que usam o vi).
Respostas:
No Mac OS X Lion 10.7, o Terminal fornece serviços para abrir uma nova janela ou guia do terminal na pasta selecionada no Finder. Eles também trabalham com nomes de caminho absolutos selecionados no texto (em qualquer aplicativo). Você pode ativar esses serviços em Preferências do sistema> Teclado> Atalhos do teclado> Serviços . Procure por "Novo terminal na pasta" e "Guia Novo terminal na pasta". Você também pode atribuir a eles teclas de atalho.
Além disso, agora você pode arrastar pastas (e nomes de caminho) para o ícone do aplicativo Terminal para abrir uma nova janela do terminal ou para uma barra de guias da janela do terminal para criar uma nova guia nessa janela. Se você arrastar para uma guia (e não para a visualização do terminal), ele executará um
cd
comando completo para alternar para esse diretório sem nenhuma digitação adicional.A partir do OS X Mountain Lion 10.8, arrastar comandos em um terminal também executará um
cd
comando completo .Nota: O serviço Novo terminal na pasta será ativado quando você selecionar uma pasta no Finder . Você não pode simplesmente abrir a pasta e executar o serviço "no local". Volte para a pasta pai, selecione a pasta relevante e ative o serviço através do menu Serviços ou menu de contexto.
fonte
A solução para seus problemas é chamada Go2Shell e faz exatamente o que você está descrevendo. Você pode encontrá-lo na App Store e o melhor de tudo ... é totalmente gratuito.
fonte
open -a Go2Shell --args config
para abrir a configuração.brew cask install go2shell
.Uma abordagem diferente: o DTerm , que fornece um prompt de comando flutuante na parte superior da janela. Isso funciona em muitos aplicativos, não apenas no Finder.
fonte
O cdto parece que é exatamente o que você precisa. É um miniaplicativo, projetado para ser colocado na barra de ferramentas do Finder. Quando você o executa, ele abre uma janela de terminal e
cd
o diretório atual no Finder.fonte
Para aqueles que usam o iTerm, a sintaxe AppleScript mudou na versão 3. do iTerm. Aqui está o procedimento completo a seguir para criar um atalho no Finder.
Inicie o Automator.
Selecione "Aplicativo":
Cole o código abaixo:
Clique em "Arquivo" -> "Exportar" para exportar como um
.app
, salve-o no/Applications
.Mova o aplicativo para a barra de ícones do Finder enquanto mantém pressionado ⌘:
Feito !
Você pode alterar o ícone no Finder seguindo as instruções aqui (altere o ícone do aplicativo que você criou com o Automator).
fonte
Eu principalmente uso esta função:
Você também pode atribuir um atalho a um script como os abaixo.
Reutilize uma guia existente ou crie uma nova janela (Terminal):
Reutilize uma guia existente ou crie uma nova guia (Terminal):
Sempre crie uma nova guia (iTerm 2):
Os dois primeiros scripts têm algumas vantagens em comparação com os serviços adicionados na versão 10.7:
Se você usa 10.7 ou 10.8, altere
tell application "Finder" to set p to POSIX path of (insertion location as alias)
para:Há um erro nas versões 10.7 e 10.8 (mas não nas 10.9 ou 10.6) em que o Finder ignora as janelas criadas após a última vez que o foco foi movido para outro aplicativo e retornado ao obter a
insertion location
propriedade.fonte
Você pode fazer isso com o recurso de serviço.
O site a seguir contém um exemplo desse serviço: http://blog.leenarts.net/2009/09/09/03/open-service-here/
fonte
Você pode arrastar qualquer arquivo ou pasta do localizador para uma janela do Terminal para inserir uma sequência do referido arquivo ou caminho absoluto da pasta.
Isso funcionará em qualquer instalação padrão (pelo menos até 10.4 Tiger [ talvez mais cedo? ]), Sem a necessidade de software adicional, nossas modificações de preferências, uma das quais poderá mais tarde assustar seu amigo não-techy se ele for seu Mac no qual você está trabalhando. Este truque também funciona para qualquer processo que esteja sendo executado no Terminal, por exemplo, emacs ou vi (supondo que você tenha o vi no modo apropriado, ou seja, as pessoas que usam o vi).
fonte
Tente isso: https://github.com/nmadhok/OpenInTerminal
Ele funciona com os itens da barra lateral do Finder, várias seleções de pasta / arquivo e tudo o que você poderia imaginar. Realmente fácil de usar!
fonte
ShellHere
http://etresoft.org/shellhere.html - Etresoft e John Daniel
Não sei se é possível acessá-lo através de um menu contextual, mas mantenho o ShellHere na barra de ferramentas do Finder .
fonte
OnMyCommand
http://free.abracode.com/cmworkshop/on_my_command.html - versão 2.3 (2011-01-16)
Captura de tela etc. em http://www.wuala.com/grahamperrin/public/2011/07/31/d/?mode=gallery
Instalado e usado por mim no Snow Leopard antes de atualizar para o Lion. Muito cedo para dizer se a versão 2.3 é compatível com o Lion.
fonte
Você pode o aplicativo que desenvolvi o FinderGo , que é de código aberto e fácil de usar
fonte
Eu uso isso há anos http://openterminal.quentin.paris/
Basta clicar com o botão direito do mouse em qualquer localizador, escolha Abrir Terminal
fonte
OpenTerminal
fonte