[macos] OS X Dock에서 셸 스크립트를 실행 하시겠습니까?

Mac OSX 도크에서 실행할 쉘 스크립트를 어떻게 설정합니까? 바로 가기를 만들면 편집기에서 파일이 열립니다. 편집을 위해 열지 않고 실행하도록 알리는 플래그가 있습니까?



답변

“쉘 스크립트 실행”단일 단계로 Automator 워크 플로우를 작성할 수 있습니다.

그런 다음 File > Save As파일 형식을 “응용 프로그램”으로 변경하십시오. 응용 프로그램을 열면 셸 스크립트 단계가 실행되고 명령이 실행 된 후 종료됩니다.

이것의 장점은 실제로 매우 간단 하다는 것입니다. 사용자 입력 (예 : 많은 파일 선택)을 매우 쉽게 가져온 다음 쉘 스크립트의 입력 (stdin 또는 인수)에 전달할 수 있습니다.

(자동화는 /Applications폴더에 있습니다!)

워크 플로우 예


답변

터미널 윈도우가 필요하지 않은 경우, 쉘 스크립트를 생성 Example하고 filename으로 이동 하여 실행 파일을 응용 프로그램으로 만들 수 Example.app/Contents/MacOS/Example있습니다. 이 새로운 응용 프로그램을 다른 응용 프로그램과 마찬가지로 독에 넣고 클릭 한 번으로 실행할 수 있습니다.

참고 : 앱 이름은 스크립트 이름과 정확히 일치해야합니다. 따라서 최상위 디렉토리가 되어야 Example.app하고 Contents/MacOS서브 디렉토리 Example의 스크립트 이름이 지정 되어야하며 스크립트는 실행 가능해야합니다.

터미널 창을 표시 해야하는 경우 간단한 해결책이 없습니다. Applescript로 무언가를 할 수는 있지만 그다지 깨끗하지는 않습니다.


답변

OSX 매버릭에서 :

  1. 쉘 스크립트를 작성하십시오.
  2. 쉘 스크립트를 실행 가능하게 만드십시오.

    chmod +x your-shell-script.sh
  3. .app접미사 를 갖도록 스크립트 이름을 바꾸십시오 .

    mv your-shell-script.sh your-shell-script.app
  4. 스크립트를 OSX 도크로 드래그하십시오.
  5. 스크립트 이름을 .sh접미사로 다시 바꾸십시오 .

    mv your-shell-script.app your-shell-script.sh
  6. Finder에서 파일을 마우스 오른쪽 버튼으로 클릭하고 “정보 입수”옵션을 클릭하십시오.
  7. 창의 맨 아래에서 쉘 스크립트가 터미널에서 열리도록 설정하십시오.

이제 독에서 스크립트를 클릭하면 터미널 창이 나타나고 스크립트가 실행됩니다.

보너스 : 스크립트가 완료되었을 때 터미널을 닫으 exit 0려면 끝에 추가 하고 터미널 설정을 변경 하여이 SO answer 에서 말하는 것처럼 “정말 종료되면 쉘을 닫습니다” .


답변

나는 이것이 오래되었지만 다른 사람들에게 도움이되는 경우를 알고 있습니다.

스크립트를 실행해야하고 터미널이 팝업되도록하려면 Abyss Knight가 말한 것처럼 결과를보고 확장자를 .command로 변경하십시오. 두 번 클릭하면 터미널 창이 열리고 실행됩니다.

그러나 자동화 또는 appleScript에서 실행하려면 이것이 필요했습니다. 따라서 이것을 새로운 터미널을 열려면 “쉘 스크립트 실행”에서 실행 한 명령은 “open myShellScript.command”이고 새 터미널에서 열립니다.


답변

스크립트가 실행 가능하고 확장자가없는 한, Dock의 오른쪽 (문서 쪽)으로 그대로 끌 수 있으며 편집기를 열지 않고 클릭하면 터미널 창에서 실행됩니다.

foo.sh와 같은 확장자를 원한다면 Finder의 파일 정보 창으로 이동하여 특정 스크립트의 기본 응용 프로그램을 (TextEdit, TextMate, 컴퓨터의 기본 설정에 관계없이) 변경할 수 있습니다 .sh 파일)을 터미널에 연결합니다. 그런 다음 텍스트 편집기에서 여는 대신 실행됩니다. 다시 Dock의 오른쪽으로 드래그해야합니다.


답변

이 글이 도움이 될 것이라고 생각합니다 : http://forums.macosxhints.com/archive/index.php/t-70973.html

설명을 바꾸려면 .command 확장명으로 이름을 바꾸거나 AppleScript를 만들어 셸을 실행할 수 있습니다.


답변

joe가 언급했듯이 쉘 스크립트를 작성한 다음 쉘 스크립트를 호출하는 애플 스크립트 스크립트를 작성하면이를 달성 할 수 있으며 매우 편리합니다.

쉘 스크립트

  1. 선호하는 텍스트 편집기에서 쉘 스크립트를 작성하십시오 (예 :

    mono "/Volumes/Media/~Users/me/Software/keepass/keepass.exe"

    (모노 프레임 워크를 사용하여 w32 실행 파일을 실행합니다)

  2. 쉘 스크립트를 저장하십시오 (예 : “StartKeepass.sh”).

애플 스크립트

  1. AppleScript 편집기를 열고 쉘 스크립트를 호출하십시오.

    do shell script "sh /Volumes/Media/~Users/me/Software/StartKeepass.sh" user name "<enter username here>" password "<Enter password here>" with administrator privileges

    • do shell script -외부 쉘 명령을 호출하는 applescript 명령
    • "sh ...." -이것은 1 단계에서 생성 된 쉘 스크립트 (전체 경로)입니다 (직접 명령을 실행할 수도 있습니다. 쉘 스크립트를 생략하고 여기에서 모노 명령을 실행할 수 있습니다)
    • user name -특정 사용자로 명령을 실행하려는 Applescript에 선언합니다.
    • "<enter username here> – “josh”와 같은 사용자 이름으로 바꾸십시오 (따옴표 유지).
    • password -비밀번호를 사과로 표시합니다.
    • "<enter password here>" -비밀번호 (예 : 따옴표)로 바꾸고 “mypass”
    • with administrative privileges -관리자로 실행하고 싶다고 선언합니다.

.APP 만들기

  1. 내 경우 RunKeepass.scpt에서 applescript를 filename.scpt로 저장하십시오.

  2. Applescript로 다른 이름으로 저장하고 파일 형식을 응용 프로그램으로 변경하면 내 경우에는 RunKeepass.app

  3. 앱 파일을 앱 폴더에 복사