2016-11-15 13 views
0

사용자가 로그인 할 때 실행해야하는 명령 줄 응용 프로그램이 있습니다. 사용자의 실행 에이전트 디렉토리에 XML 파일을 추가했습니다. 응용 프로그램이 실행되지만 터미널을 실행할 때 문제가 발생합니다. 나는 그것을 사용자가 알지 못해도 백그라운드에서 실행되기를 원한다. launchagents를 사용하여 백그라운드에서 명령 줄 응용 프로그램 실행 mac os x

<?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>LaunchOnlyOnce</key> 
    <true/> 
    <key>ProgramArguments</key> 
    <array> 
     <string>/usr/bin/open</string> 
     <string>-n</string> 
     <string>/Applications/Host</string> 
    </array> 
    <key>KeepAlive</key> 
    <false/> 
    <key>Label</key> 
    <string>com.test.httphost</string> 
    <key>RunAtLoad</key> 
    <true/> 
</dict> 

나는이 어떻게 할 수있는

: 이것은 내 PLIST입니까?

답변

1

문제는 open입니다. /응용 프로그램/호스트을 직접 호출하면 예상대로 작동합니다. 당신은 개방에 대한 -n PARAM 필요한 경우

그러나 -c 매개 변수를 /bin/bash에 대한 호출을 통해 호출 시도하고 문자열로 비난 명령의 나머지 부분에 전달합니다.