두 개의 앱을 묶어서 열거 나 닫으면 다른 앱이 묶일 수 있습니까?


1

"App A"가 시작될 때 다른 "App B"가 자동으로 시작되도록 트리거를 설정할 수 있습니까? 이상적으로 "App A"가 종료 될 때 솔루션은 "App B"로 종료 메시지를 보내지 만 중요한 부분은 시작 시퀀스입니다.

답변:


1

다음과 같이 plist를 저장하십시오. ~/Library/LaunchAgents/test.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>test</string>
  <key>ProgramArguments</key>
  <array>
    <string>bash</string>
    <string>-c</string>
    <string>while sleep 5; do
  if pgrep -x Preview; then
    pgrep -x TextEdit || open -jga TextEdit
  else
    pgrep -x TextEdit &amp;&amp; osascript -e 'quit app "TextEdit"'
  fi
done</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>KeepAlive</key>
  <true/>
</dict>
</plist>

그런 다음 plist를로드합니다. launchctl load ~/Library/LaunchAgents/test.plist 로그 아웃 한 후 다시 로그인하십시오.

open -jg 숨겨진 응용 프로그램을 열고 창을 올리지 않아야합니다. TextEdit과 같은 일부 문서 기반 응용 프로그램의 경우 응용 프로그램이 열려 있지만 표시되는 창이없는 경우 새 가시 창을 엽니 다.

pgrep 그리고 -j 옵션 open 10.8에서 더했다. 그만큼 -j 옵션은 도움말 메시지에만 표시되며 설명서 페이지에는 표시되지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.