문제

Mac OS의 "Open Command Window"Windows PowerToy와 비슷한 것이 있습니까? Google 검색을 통해 몇 개의 플러그인을 찾았지만 개발자에게 가장 적합한 점을보고 싶었습니다.

도움이 되었습니까?

해결책

Mac OS X Lion 10.7 에서이 터미널에는이 기능이 서비스로서 정확하게 포함됩니다. 대부분의 서비스와 마찬가지로 이들은 기본적으로 비활성화되므로 서비스 메뉴에 표시되도록이를 활성화해야합니다.

시스템 환경 설정> 키보드> 바로 가기> 서비스

할 수 있게 하다 폴더의 새로운 터미널. 또한 있습니다 폴더의 새로운 터미널 탭, 이곳에서 가장 앞면 터미널 창에 탭이 생성됩니다 (그렇지 않은 경우 새 창이 생성됩니다). 이러한 서비스는 파인더뿐만 아니라 모든 응용 프로그램에서 작동하며 텍스트에서 선택한 절대 경로 이름뿐만 아니라 폴더에서도 작동합니다.

명령 키를 할당 할 수도 있습니다.

서비스는 각 응용 프로그램 메뉴의 서비스 하위 메뉴와 상황에 맞는 메뉴 (폴더 또는 PathName을 통제하거나 마우스 오른쪽 버튼으로 클릭)에 나타납니다.

그만큼 폴더의 새로운 터미널 서비스가 활성화됩니다 폴더를 선택할 때 파인더에서. 폴더를 열고 "제자리에"서비스를 실행할 수는 없습니다. 상위 폴더로 돌아가서 관련 폴더를 선택한 다음 서비스 메뉴 또는 컨텍스트 메뉴를 통해 서비스를 활성화하십시오.

또한, Lion Terminal은 폴더 (또는 PathName)를 터미널 응용 프로그램 아이콘으로 끌면 새 터미널 창을 열고 기존 창의 탭 막대로 드래그하여 새 탭을 만들 수 있습니다.

마지막으로 폴더 또는 PathName을 탭 (탭 막대)으로 드래그하고 전경 프로세스가 쉘 인 경우 "CD"명령을 자동으로 실행합니다. (탭 내에서 터미널보기로 드래그하면 이전 버전의 터미널에서와 같이 PathName 자체가 자체적으로 삽입됩니다.)

명령 줄 또는 쉘 스크립트에서이를 수행 할 수도 있습니다.

open -a Terminal /path/to/folder

이것은 폴더/PathName을 터미널 응용 프로그램 아이콘으로 드래그하는 것과 동등한 명령 줄입니다.

관련 메모에서 Lion Terminal에는 Man Pages를 찾는 새로운 서비스가 있습니다. 터미널에서 사람 페이지를 엽니 다 새 터미널 창에 선택한 Man Page 주제를 표시하고 터미널에서 사람 페이지를 검색하십시오 선택한 텍스트에서 "Apropos"를 수행합니다. 전자는 또한 Man Page 참조 ( "Open (2)", Man Page Command Line 인수 ( "2 Open") 및 Man Page URL ( "X-Man-Page : // 2/Open")을 이해합니다.

다른 팁

이것:

https://github.com/jbtule/cdto#cd-to

Finder Toolbar로 드래그하는 작은 앱입니다. 아이콘은 아주 잘 맞습니다. 터미널, X11 (X11), Iterm과 함께 작동합니다.

대안으로 필수 불가능한 응용 프로그램은 dterm, 실제로 응용 프로그램에서 미니 터미널을 엽니 다. 또한 Finder, Xcode, Photoshop 등의 거의 모든 것과 함께 작동합니다.

설명 (감사합니다 @vgm64) : 이미 터미널에 있다면 터미널을 떠나지 않고 최상위 파인더 창으로 빠르게 변경할 수 있습니다. 이런 식으로 마우스 사용을 피할 수 있습니다.

나는 다음을 나의 것에 추가했다 .bash_profile 그래서 입력 할 수 있습니다 cdff 언제든지 터미널에서.

function ff { osascript -e 'tell application "Finder"'\
 -e "if (${1-1} <= (count Finder windows)) then"\
 -e "get POSIX path of (target of window ${1-1} as alias)"\
 -e 'else' -e 'get POSIX path of (desktop as alias)'\
 -e 'end if' -e 'end tell'; };\

function cdff { cd "`ff $@`"; };

이것은 왔습니다 이 macosxhints.com 터미널 힌트.

체크 아웃 여기서 터미널을 열십시오. "여기서 열린 명령 창"과 가장 유사 할 수 있습니다. 나는 사용했다 >cdto 그리고 이것은 매우 비슷하지만 이것은 공간을 다루는 데 조금 더 나은 것 같습니다 ... 그러나 완벽하지는 않습니다.

그것이 아주 좋은 것은 "응용 프로그램 시작시 키 다운 이벤트를 감지하고 사용하여 스크립트의 동작을 수정했습니다."스크립트가 ⌘ 키를 누른 상태에서 호출 할 때 대부분의 터미널 창에서 새 탭을 열도록 허용합니다. 깔끔한 트릭.

또한 Pcheese의 대답에 주목하십시오. 무거운 터미널 사용자에게 더 유용 할 것입니다!

매우 멋지고 슬림의 업데이트 버전이 있습니다. 여기서 터미널을 열십시오 게시자에 의해 VGM64 그리고 D0K. 변화는 제임스 데이비드 로우. 그는 새 버전을 게시했습니다 그의 사이트. OpenterMinalHere.zip을 다운로드하고 추출하고 번들을 라이브러리/스크립트 폴더로 이동하여 Finder 도구 모음으로 끌어 올리십시오.

특별한 것은 그것입니다 항상 새 탭을 엽니 다 Terminal.app 창이 이미 열린 경우. 매우 유용한! 또한 응용 프로그램의 버튼 스타일은 Snow Leopard Finder.App 스타일에 더 잘 맞습니다. 수정 했다.

또한 Command-C를 사용하여 Finder의 항목을 복사하고 터미널로 점프 할 수 있습니다 (예 : Spotlight 또는 Quicksilver를 사용하여 'CD'유형을 입력하고 Command-V로 간단히 붙여 넣을 수 있습니다.

Finder Toolbar 용 3 앱이있는 번들을 만들었습니다. 다른 두 앱은 다음과 같습니다.

  • 현재 선택한 텍스트 메이트
  • 현재 폴더로 GITX를 엽니 다

자세한 내용은 여기를 참조하십시오.http://nslog.de/posts/71

큰 고양이 스크립트를 설치하는 경우 (http://www.ranchero.com/bigcat/) 자신의 상황에 맞는 메뉴 (오른쪽 클릭) 항목을 추가 할 수 있습니다. 나는 그것이 AppleScript에서 열린 터미널과 함께 제공되지 않는다고 생각하지만이 스크립트를 사용합니다 (나는 나 자신을 썼거나 다른 사람의 예에서 들어 올린 경우 솔직히 기억하지 않습니다).


on main(filelist)
    tell application "Finder"
        try
            activate
            set frontWin to folder of front window as string
            set frontWinPath to (get POSIX path of frontWin)
            tell application "Terminal"
                activate
                do script with command "cd \"" & frontWinPath & "\""
            end tell
        on error error_message
            beep
            display dialog error_message buttons ¬
                {"OK"} default button 1
        end try
    end tell
end main

비슷한 스크립트를 사용하면 마우스 오른쪽 버튼을 클릭 한 파일의 완전한 경로를 얻을 수 있습니다. 더 유용합니다.

그것은 당신이 요구하는 것보다 조금 더 많지만, 나는 Finder에 약간 더 주스를 가지고 싶어하는 사람에게 Cocoatech의 Path Finder를 추천합니다. 현재 디렉토리의 터미널 창을 열 수있는 도구 모음 버튼 또는 각 파인더 창의 하단에 터미널 명령 줄이있는 개폐식 창이 포함됩니다. 이제 내가 없이는 살 수없는 다른 많은 기능들도 있습니다. 매우 성숙하고 안정적인 소프트웨어.http://cocoatech.com/

좋아, 나는 이것이 조금 늦었다는 것을 알고있다 ... 아마도이 대안은 게시물을 작성하는 순간에 사용할 수 없습니까?

어쨌든, 나는 Fink를 통해 POS 패키지를 설치하는 것을 발견했습니다 (이 경우 전제 조건, Macports를 사용하는 사람들과 비슷한 것이있을 수 있습니까?)가 가장 쉬운 솔루션이되었습니다. 두 가지 명령을받습니다.

  1. POSD- 가장 앞쪽 파인더 창의 현재 디렉토리를 제공합니다.
  2. FDC- 가장 앞쪽 파인더 창의 현재 디렉토리를 터미널 PWD로 전환합니다. 이것은 'Open'과 약간 다릅니다. 항상 새로운 파인더 창이 엽니 다.

예, CDF를 작성하기 전에 터미널 창으로 전환해야하지만 Finder 도구 모음에서 버튼을 클릭하는 것과 비교하는 것이 매우 저렴하다고 생각합니다. 또한 ITERM과 함께 작동하므로 ITERM 창을 열어주는 별도의 Finder Toolbar 버튼을 다운로드 할 필요가 없습니다. 이것은 Pcheese가 제안한 것과 동일한 접근법이지만 .bash_profile을 혼란스럽게 할 필요는 없습니다.

나와 같이 Finder Toolbar를 끄면이 서비스는 모든 폴더의 상황에 맞는 메뉴에 항목을 추가합니다. http://blog.leenarts.net/2009/09/03/open-service-here/

또한 Finder Tree View에 표시된 폴더를 열 수 있습니다.

나는 주로이 기능을 사용합니다.

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

아래의 스크립트에 바로 가기를 할당 할 수도 있습니다.

기존 탭을 재사용하거나 새 창 (터미널)을 만듭니다.

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에 추가 된 서비스와 비교하여 두 가지 장점이 있습니다.

  • 먼저 폴더를 선택 해야하는 대신 제목 표시 줄의 폴더를 사용합니다.
  • 그들은 바쁘지 않은 경우 가장 앞쪽 탭을 재사용하고, 예를 들어 명령을 실행하거나, 남자 페이지를 표시하거나, EMAC를 실행합니다.

OSX 10.6의 사과 스크립트에는 버그가 있습니다. (2 개의 터미널 윈도우가 열린). 활성화 후 Close 명령을 추가하여 이것을 수정했습니다. 이것은 첫 번째 터미널 창을 닫습니다.

on run
    tell application "Finder"
        try
            activate
            set frontWin to folder of front window as string
            set frontWinPath to (get POSIX path of frontWin)
            tell application "Terminal"
                activate
                close
                do script with command "cd \"" & frontWinPath & "\""
            end tell
        on error error_message
            beep
            display dialog error_message buttons ¬
                {"OK"} default button 1
        end try
    end tell
end run
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top