Jak mogę otworzyć okno Terminal bezpośrednio z mojej bieżącej lokalizacji Findera?
111
Zastanawiałem się, czy jest coś, co mogę kliknąć prawym przyciskiem myszy w dowolnym oknie okna „Findera”, tak że mam opcję „Otwórz terminal tutaj”. To byłoby naprawdę pomocne.
ta strona powinna być bardziej odpowiednim miejscem do zapytania
ericn
Odpowiedzi:
134
Począwszy od systemu Mac OS X Lion 10.7, Terminal zapewnia usługi otwierania nowego okna lub karty terminala w wybranym folderze w Finderze. Działają również z bezwzględnymi ścieżkami wybranymi w tekście (w dowolnej aplikacji). Możesz włączyć te usługi za pomocą Preferencji systemowych> Klawiatura> Skróty klawiaturowe> Usługi . Poszukaj „Nowy terminal w folderze” i „Nowa karta terminalu w folderze”. Możesz także przypisać im klawisze skrótów.
Ponadto możesz teraz przeciągać foldery (i ścieżki) na ikonę aplikacji Terminal, aby otworzyć nowe okno terminalu, lub na pasek kart w oknie terminalu, aby utworzyć nową kartę w tym oknie. Przeciągnięcie na kartę (zamiast do widoku terminala) spowoduje wykonanie pełnego cdpolecenia, aby przejść do tego katalogu bez żadnego dodatkowego wpisywania.
Począwszy od OS X Mountain Lion 10.8, przeciąganie poleceń do terminala spowoduje również wykonanie pełnego cdpolecenia.
Uwaga: usługa Nowy terminal w folderze stanie się aktywna po wybraniu folderu w Finderze . Nie można po prostu otworzyć folderu i uruchomić usługi „na miejscu”. Wróć do folderu nadrzędnego, wybierz odpowiedni folder, a następnie aktywuj usługę za pomocą menu Usługi lub menu kontekstowego.
„Ponadto możesz teraz przeciągać foldery (i ścieżki) na ikonę aplikacji Terminal, aby otworzyć nowe okno terminala” - żartujesz sobie? to cudownie! :)
phil
3
W Mavericks 10.9.4 - skróty nie działają dla mnie. Dzięki za wskazówkę Drag and Drop :)
amar
1
@amar Czy możesz podzielić się z nami tym, co zrobiłeś? Również złamane dla mnie w 10.10
OJFord
2
@Olive - po aktualizacji do Yesomite skróty już nie działały dla mnie :(
amar
4
Jedną rzeczą, którą zauważyłem, i to w przypadku El Capitan, jest to, że musisz wybrać folder w Finderze (pojedyncze kliknięcie folderu, który widzisz w Finderze). Spodziewałem się, że zadziała to: otworzy okno Terminalu w bieżącym folderze. W rzeczywistości musisz wybrać folder w oknie.
sillygwailo,
19
Rozwiązanie problemów nazywa się Go2Shell i robi dokładnie to, co opisujesz . Możesz go znaleźć w App Store, a co najważniejsze ... jest całkowicie darmowy.
Jeśli chcesz używać iTerm zamiast z Go2Shell, zapoznaj się z tą odpowiedzią, aby wyświetlić preferencje . Lub w skrócie, wpisz, open -a Go2Shell --args configaby wywołać konfigurację.
Jeromy Anglim,
@herherran wydaje się być teraz w porządku
Colas
1
Najnowsza wersja nie może zostać zainstalowana za pośrednictwem sklepu z aplikacjami, ale z ich witryny zipzapmac.com/Go2Shell lub przez brew cask install go2shell.
fiedl
udało mi się zainstalować najnowszą wersję v1.2.2 ze sklepu Apple / Itunes, działającą idealnie
ComputingFreak
14
Inne podejście: DTerm , które daje swobodny wiersz polecenia w górnej części okna. Działa to w wielu aplikacjach, nie tylko w Finderze.
cdto wydaje się być tym, czego potrzebujesz. Jest to mini-aplikacja, zaprojektowana do umieszczenia na pasku narzędzi Findera, po uruchomieniu otworzy okno terminala i cddo bieżącego katalogu w Finderze.
Dla tych, którzy używają iTerm, składnia AppleScript uległa zmianie w iTerm w wersji 3. Oto pełna procedura, którą należy wykonać, aby utworzyć skrót w Finderze.
Uruchom Automator.
Wybierz „Aplikacja”:
Wybierz „uruchom Applescript”:
Wklej poniższy kod:
-- 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
Kliknij „Plik” -> „Eksportuj”, aby wyeksportować jako .app, zapisz go /Applications.
Przenieś aplikację na pasek ikon Findera, przytrzymując ⌘:
Gotowy !
Możesz zmienić ikonę w Finderze, postępując zgodnie z instrukcjami tutaj (zmień ikonę aplikacji utworzonej za pomocą Automatora).
cf(){
cd "$(osascript -e 'tell app "Finder" to POSIX path of (insertion location as alias)')"}
Możesz także przypisać skrót do skryptu, takiego jak te poniżej.
Ponownie użyj istniejącej karty lub utwórz nowe okno (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
Użyj ponownie istniejącej karty lub utwórz nową kartę (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
Zawsze twórz nową kartę (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
Pierwsze dwa skrypty mają kilka zalet w porównaniu z usługami dodanymi w wersji 10.7:
Od wersji 10.9 występuje błąd polegający na tym, że usługi otrzymujące foldery jako dane wejściowe nigdy nie są wymienione w menu usług w widoku kolumny. Jeśli przypiszesz nową kartę Terminal w usłudze Folder skrót klawiaturowy, nie będzie działać w widoku kolumny.
Korzystają z folderu na pasku tytułu, zamiast wymagać najpierw wybrania folderu.
Używają ponownie pierwszej karty, jeśli nie jest zajęta, np. Uruchamiając polecenie, wyświetlając stronę podręcznika lub uruchamiając emacsa.
Jeśli używasz wersji 10.7 lub 10.8, zmień tell application "Finder" to set p to POSIX path of (insertion location as alias)na:
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
Wystąpił błąd w 10.7 i 10.8 (ale nie w 10.9 lub 10.6), w którym Finder ignoruje okna utworzone po ostatnim przeniesieniu fokusu do innej aplikacji iz powrotem podczas uzyskiwania insertion locationwłaściwości.
Możesz przeciągnąć dowolny plik lub folder z wyszukiwarki do okna terminala, aby wstawić ciąg bezwzględnej ścieżki do tego pliku lub folderu.
Będzie to działać na każdej standardowej instalacji (przynajmniej wstecz do 10.4 Tygrysa [ ¿może wcześniej? ]) Bez potrzeby dodatkowego oprogramowania, które zmieniamy preferencje, które może później przerazić twojego nietechnicznego przyjaciela, jeśli okaże się, że to jego / jej Mac, nad którym pracujesz. Ta sztuczka działa również w przypadku dowolnego procesu uruchomionego w Terminalu, np. Emacs lub vi (zakładając, że masz vi w odpowiednim trybie, ale robią to również ludzie, którzy używają vi).
Zainstalowane i używane przeze mnie w systemie Snow Leopard przed uaktualnieniem do Lion. Za wcześnie, aby powiedzieć, czy wersja 2.3 jest kompatybilna z Lion.
Dead link :(. To jest powód, dla którego odpowiedzi tylko na link mają krótki okres użytkowania lub powinny być regularnie sprawdzane, aby pozostać przy życiu.
Odpowiedzi:
Począwszy od systemu Mac OS X Lion 10.7, Terminal zapewnia usługi otwierania nowego okna lub karty terminala w wybranym folderze w Finderze. Działają również z bezwzględnymi ścieżkami wybranymi w tekście (w dowolnej aplikacji). Możesz włączyć te usługi za pomocą Preferencji systemowych> Klawiatura> Skróty klawiaturowe> Usługi . Poszukaj „Nowy terminal w folderze” i „Nowa karta terminalu w folderze”. Możesz także przypisać im klawisze skrótów.
Ponadto możesz teraz przeciągać foldery (i ścieżki) na ikonę aplikacji Terminal, aby otworzyć nowe okno terminalu, lub na pasek kart w oknie terminalu, aby utworzyć nową kartę w tym oknie. Przeciągnięcie na kartę (zamiast do widoku terminala) spowoduje wykonanie pełnego
cd
polecenia, aby przejść do tego katalogu bez żadnego dodatkowego wpisywania.Począwszy od OS X Mountain Lion 10.8, przeciąganie poleceń do terminala spowoduje również wykonanie pełnego
cd
polecenia.Uwaga: usługa Nowy terminal w folderze stanie się aktywna po wybraniu folderu w Finderze . Nie można po prostu otworzyć folderu i uruchomić usługi „na miejscu”. Wróć do folderu nadrzędnego, wybierz odpowiedni folder, a następnie aktywuj usługę za pomocą menu Usługi lub menu kontekstowego.
źródło
Rozwiązanie problemów nazywa się Go2Shell i robi dokładnie to, co opisujesz . Możesz go znaleźć w App Store, a co najważniejsze ... jest całkowicie darmowy.
źródło
open -a Go2Shell --args config
aby wywołać konfigurację.brew cask install go2shell
.Inne podejście: DTerm , które daje swobodny wiersz polecenia w górnej części okna. Działa to w wielu aplikacjach, nie tylko w Finderze.
źródło
cdto wydaje się być tym, czego potrzebujesz. Jest to mini-aplikacja, zaprojektowana do umieszczenia na pasku narzędzi Findera, po uruchomieniu otworzy okno terminala i
cd
do bieżącego katalogu w Finderze.źródło
Dla tych, którzy używają iTerm, składnia AppleScript uległa zmianie w iTerm w wersji 3. Oto pełna procedura, którą należy wykonać, aby utworzyć skrót w Finderze.
Uruchom Automator.
Wybierz „Aplikacja”:
Wklej poniższy kod:
Kliknij „Plik” -> „Eksportuj”, aby wyeksportować jako
.app
, zapisz go/Applications
.Przenieś aplikację na pasek ikon Findera, przytrzymując ⌘:
Gotowy !
Możesz zmienić ikonę w Finderze, postępując zgodnie z instrukcjami tutaj (zmień ikonę aplikacji utworzonej za pomocą Automatora).
źródło
Najczęściej używam tej funkcji:
Możesz także przypisać skrót do skryptu, takiego jak te poniżej.
Ponownie użyj istniejącej karty lub utwórz nowe okno (Terminal):
Użyj ponownie istniejącej karty lub utwórz nową kartę (Terminal):
Zawsze twórz nową kartę (iTerm 2):
Pierwsze dwa skrypty mają kilka zalet w porównaniu z usługami dodanymi w wersji 10.7:
Jeśli używasz wersji 10.7 lub 10.8, zmień
tell application "Finder" to set p to POSIX path of (insertion location as alias)
na:Wystąpił błąd w 10.7 i 10.8 (ale nie w 10.9 lub 10.6), w którym Finder ignoruje okna utworzone po ostatnim przeniesieniu fokusu do innej aplikacji iz powrotem podczas uzyskiwania
insertion location
właściwości.źródło
Możesz to zrobić za pomocą funkcji usługi.
Poniższa strona zawiera przykład takiej usługi: http://blog.leenarts.net/2009/09/03/open-service-here/
źródło
Możesz przeciągnąć dowolny plik lub folder z wyszukiwarki do okna terminala, aby wstawić ciąg bezwzględnej ścieżki do tego pliku lub folderu.
Będzie to działać na każdej standardowej instalacji (przynajmniej wstecz do 10.4 Tygrysa [ ¿może wcześniej? ]) Bez potrzeby dodatkowego oprogramowania, które zmieniamy preferencje, które może później przerazić twojego nietechnicznego przyjaciela, jeśli okaże się, że to jego / jej Mac, nad którym pracujesz. Ta sztuczka działa również w przypadku dowolnego procesu uruchomionego w Terminalu, np. Emacs lub vi (zakładając, że masz vi w odpowiednim trybie, ale robią to również ludzie, którzy używają vi).
źródło
Spróbuj tego: https://github.com/nmadhok/OpenInTerminal
Działa z elementami paska bocznego Findera, wieloma wybranymi folderami / plikami i wszystkim, co tylko możesz wymyślić. Naprawdę łatwy w użyciu!
źródło
ShellHere
http://etresoft.org/shellhere.html - Etresoft i John Daniel
Nie wiem, czy można to osiągnąć poprzez menu kontekstowe, ale trzymam ShellHere na pasku narzędzi Findera .
źródło
OnMyCommand
http://free.abracode.com/cmworkshop/on_my_command.html - wersja 2.3 (16.01.2011)
Zrzuty ekranu itp. Na stronie http://www.wuala.com/grahamperrin/public/2011/07/31/d/?mode=gallery
Zainstalowane i używane przeze mnie w systemie Snow Leopard przed uaktualnieniem do Lion. Za wcześnie, aby powiedzieć, czy wersja 2.3 jest kompatybilna z Lion.
źródło
Możesz opracować aplikację FinderGo , która jest open source i łatwa w użyciu
źródło
Używam tego od lat http://openterminal.quentin.paris/
Wystarczy kliknąć prawym przyciskiem myszy w dowolnym Finderze, wybierz Otwórz terminal
źródło
OpenTerminal
źródło