Как открыть окно терминала непосредственно из текущего местоположения Finder?

Мне было интересно, есть ли кто-нибудь, если бы я мог щелкнуть правой кнопкой мыши внутри любого экземпляра окна «Finder», чтобы у меня была опция «Open Terminal Here». Было бы очень полезно.

99 голосов | спросил user3608 4 AMpMon, 04 Apr 2011 06:30:32 +040030Monday 2011, 06:30:32

15 ответов


119

Как и в Mac OS X Lion 10.7, Terminal предоставляет услуги для открытия нового окна терминала или вкладки в выбранной папке в Finder. Они также работают с абсолютными именами путей, выбранными в тексте (в любом приложении). Вы можете включить эти службы с помощью Системных настроек> Клавиатура> Ярлыки клавиш> Услуги . Найдите «Новый терминал в папке» и «Новая вкладка терминала в папке». Вы также можете назначить им сочетания клавиш.

Кроме того, теперь вы можете перетаскивать папки (и пути) на значок приложения терминала, чтобы открыть новое окно терминала или на панели вкладок в окне терминала, чтобы создать новую вкладку в этом окне. Если вы перетащите на вкладку (а не в виде терминала), она выполнит полную команду cd, чтобы переключиться на этот каталог без дополнительной записи.

Начиная с OS X Mountain Lion 10.8, Command-Dragging в терминал также выполнит полную команду cd.

ответил Chris Page 7 PM00000040000005731 2011, 16:49:57
17

Решение ваших проблем называется Go2Shell , и это точно то, что вы описываете. Вы можете найти его в App Store и лучше всего ... это абсолютно бесплатно.

Go2Shell

ответил z4mba 31 J000000Sunday11 2011, 12:41:47
13

Другой подход: DTerm , который дает вам плавающую командную строку в верхней части окна. Это работает во многих приложениях, а не только в Finder.

ответил jtbandes 31 J000000Sunday11 2011, 12:37:00
12

cdto кажется, что это именно то, что вам нужно. Это мини-приложение, предназначенное для установки на панель инструментов Finder, когда вы запустите его, он откроет окно терминала и cd в текущий каталог в Finder.

ответил Mark Szymanski 4 AMpMon, 04 Apr 2011 06:35:33 +040035Monday 2011, 06:35:33
7

В основном я использую эту функцию:

cf() {
  cd "$(osascript -e 'tell app "Finder" to POSIX path of (insertion location as alias)')"
}

Вы также можете назначить ярлык сценарию, подобному приведенному ниже.

Повторно используйте существующую вкладку или создайте новое окно (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 1 then
        do script "cd " & quoted form of p in window 1
    else
        do script "cd " & quoted form of p
    end if
    activate
end tell

Повторно использовать существующую вкладку или создать новую вкладку (терминал):

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 1 then
        tell application "System Events" to keystroke "t" using command down
    end if
    do script "cd " & quoted form of p in window 1
end tell

Всегда создайте новую вкладку (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

Первые два скрипта имеют несколько преимуществ по сравнению с сервисами, добавленными в 10.7:

  • Начиная с версии 10.9, существует ошибка, при которой службы, которые получают папки в качестве входных данных, никогда не отображаются в меню служб в виде столбцов. Если вы назначили новую вкладку терминала в службе папок ярлыком на клавиатуре, она не работает в представлении столбцов.
  • Они используют папку в строке заголовка вместо того, чтобы сначала выбрать папку.
  • Они повторно используют самую верхнюю вкладку, если она не занята, например. запуск команды, отображение справочной страницы или запуск emacs.

Если вы используете 10.7 или 10.8, измените tell application "Finder" to set p to POSIX path of (insertion location as alias):

tell application "Finder"
    if exists Finder window 1 then
        set p to POSIX path of (target of Finder window 1 as alias)
    else
        set p to POSIX path of (path to desktop)
    end if
end tell

Есть ошибка в 10.7 и 10.8 (но не в 10.9 или 10.6), когда Finder игнорирует окна, созданные после того, как фокус был перенесен в другое приложение и обратно при получении свойства .

ответил user495470 30 AM000000100000004231 2012, 10:14:42
3

Вы можете сделать это с помощью сервисной функции.

Следующий сайт содержит пример такой службы: http://blog.leenarts.net/2009/09/03/открытое обслуживание здесь /

ответил Jeroen Leenarts 4 PMpMon, 04 Apr 2011 17:44:32 +040044Monday 2011, 17:44:32
2

Вы можете перетащить любой файл или папку из поискового устройства в окно терминала, чтобы вставить строку указанного пути к файлу или папке.

Это будет работать с любой стандартной установкой (по крайней мере, до 10.4 Tiger [ ¿maybe раньше? ]), не требуя дополнительного программного обеспечения, которое может быть изменено нами в зависимости от того, -тетейный друг, если это его /ее Мак, над которым ты работаешь. Этот трюк также работает для любого процесса, который выполняется в терминале, например. emacs или vi (предполагая, что у вас есть vi в соответствующем режиме, или, тем не менее, это то, что вы, люди, которые используют vi).

ответил roosto 7 PM00000090000003831 2011, 21:57:38
2

Попробуйте следующее: https://github.com/nmadhok/OpenInTerminal

Он работает с элементами боковой панели Finder, несколькими папками /файлами и всем, что вы можете придумать. Действительно прост в использовании!

ответил nmadhok 7 FebruaryEurope/MoscowbFri, 07 Feb 2014 12:33:37 +0400000000pmFri, 07 Feb 2014 12:33:37 +040014 2014, 12:33:37
1

ShellHere

http://etresoft.org/shellhere.html Этресофт и Джон Даниэль

  

â € | щелкните правой кнопкой мыши внутри любого экземпляра окна «Finder» â € |

Я не знаю, можно ли это сделать через контекстное меню, но я держу ShellHere на панели инструментов Finder .

ответил Graham Perrin 31 J000000Sunday11 2011, 12:23:48
1

OnMyCommand

http://free.abracode.com/cmworkshop/on_my_command.html - версия 2.3 (2011-01-16)

Снимок экрана и т. д. http: //www .wuala.com /grahamperrin /открытый /2011/07/31 /д /? = режим галереи

Устанавливается и используется мной на Snow Leopard перед обновлением до Льва. Слишком скоро для меня можно сказать, совместима ли версия 2.3 с Lion.

ответил Graham Perrin 31 J000000Sunday11 2011, 14:17:40
0

Вы можете создать приложение FinderGo , которое является открытым исходным кодом и простым в использовании

ответил onmyway133 17 MaramFri, 17 Mar 2017 09:50:50 +03002017-03-17T09:50:50+03:0009 2017, 09:50:50
0

Я использую это в течение многих лет http://openterminal.quentin.paris/
Просто щелкните правой кнопкой мыши в любом месте Finder, выберите Open Terminal

ответил Phương Lê 7 AMpFri, 07 Apr 2017 08:32:50 +030032Friday 2017, 08:32:50
0

Моя версия MacOS: 10.12.5 , и вам не нужно использовать какие-либо другие инструменты.

1. Включить службы: Системные настройки> Клавиатура> Ярлыки клавиш> Услуги

check Новый терминал в папке

  1. Finder> Просмотр> Показать панель путей

  2. Как увидеть сервис? Это сложно.

Так как вы видите панель путей ниже в поисковике, щелкните правой кнопкой мыши значок файла на этом пути, затем вы увидите Service > Новый терминал в папке

ответил skytree 11 J0000006Europe/Moscow 2017, 22:37:18
-1
ответил ohho 11 +04002011-10-11T15:00:03+04:00312011bEurope/MoscowTue, 11 Oct 2011 15:00:03 +0400 2011, 15:00:03

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132