명령 줄을 통한 자동화 서비스 설치


2

Mac 용 서비스 설치 플로우를 자동화하고 싶습니다. 다음은 내 스크립트입니다.

#!/bin/sh
rm -rf ./tempWorkflows
mkdir tempWorkflows
for filename in ./*.workflow; do
    cp -R "$filename" ./tempWorkflows/"$filename"
done
for filename in ./tempWorkflows/*.workflow; do
    open $filename
done
rm -rf ./tempWorkflows

기본적으로 모든 *.workflow 열어. 그러나, open $filename, 확인 메시지를 묻는 메시지가 나타납니다.

popup

추가 할 수있는 방법이 있습니까? --no-prompt 또는 열린 명령에 대한 유사한 플래그?

편집하다:

엘 캐피 탄 10.11.3을 사용하고 있습니다.


그러나 실행중인 OS X의 버전에 따라 방법을 구현할 수 있습니다.
user3439894

업데이트 된 Mac OS 정보. 10.11.3을 사용 중입니다.
siutsin

AppleScript 또는 Automator를 사용하여 응용 프로그램 번들을 생성 할 수 있습니다. 응용 프로그램 번들을 만드는 것은 응용 프로그램이 서비스 설치 프로그램 대화 상자의 설치 및 완료 버튼을 클릭하여 컴퓨터를 제어 할 수 있도록하기 위해 필요합니다. Automator 앱을 사용하는 것이 아마도 가장 쉬운 방법 일 것입니다. Run Shell Script 동작 몇 줄의 AppleScript 암호 ~을 사용하여 osascript 다음 몇 줄을 추가하여 open $filename 선. OS X 10.10에서 작동하지만 OS X 10.11이 없어도 OS X 10.10에서 작동해야하는데 관심이 있으시면 답변을 작성하겠습니다. 알려줘.
user3439894

BTW 주위에 따옴표가 있어야합니다. $filename ...에서 open "$filename" 귀하의 Automator 서비스 .workflow 파일에는 이름에 공백이 있습니다.
user3439894

답변:


2

만약 자동화 닫히고 열린다. 자동화 선택하고 신청 아래에 문서 유형 선택 , 다음을 클릭하십시오. 고르다 단추. 이미 열려있는 경우 파일 & gt; 새로운 선택하고 신청 아래에 문서 유형 선택 .

을 추가하다 셸 스크립트 실행 동작 그것에.

복사하여 붙여 넣기하십시오. 쉘 코드 당신은 현재 셸 스크립트 실행 동작 .

다음 행을 추가하십시오. 암호 후: open $filename

sleep 1
osascript -e 'tell application "System Events" to click button "Install" of window "Service Installer" of process "Automator"'
sleep 1
osascript -e 'tell application "System Events" to click button "Done" of window "Service Installer" of process "Automator"'

참고 : 또한 적절한 cd 줄 위의 rm -rf ./tempWorkflows 당신이 현재 가지고있는 라인 암호 예를 들어 cd /some/directory/path 그게 어디있어? 경로 이름 당신 위치의 .workflow 파일은 귀하의 스크립트 .

을 살리다 자동화 응용 프로그램 같이 Automator 서비스 설치 . Install Automator Service 다음 것:

열다 시스템 환경 설정 & gt; 보안 & amp; 은둔 & gt; 접근성 & gt; 은둔

클릭 자물쇠 아이콘을 클릭하여 변경하고 비밀번호를 입력 한 다음 터놓다 단추.

사용자를 [+] 추가하려면 Automator 서비스 설치 또는 응용 프로그램 번들을 창에 끌어서 놓으십시오. Accessibility 이제 Automator 서비스 설치 응용 프로그램을 실행하려면 쉘 코드 AppleScript를 사용하십시오. 암호 를 클릭하면 설치 버튼과 후속 끝난 버튼을 서비스 설치 관리자 대화 상자에서 설치 중 서비스 .

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