문제

사용자가 원하는 것에 따라 실행의 일부를 동적으로 변경할 수 있다면 훨씬 더 유용한 사용자 스크립트가 있습니다.간단한 스위치를 전달하면 이 문제를 쉽게 해결할 수 있지만 그렇게 할 방법이 없습니다.

스크립트 이름에 키워드를 넣어보기도 했으나, Xcode 실행 전에 스크립트를 GUID 모양의 파일 이름으로 복사하므로 작동하지 않습니다.

그렇다면 일종의 인수를 사용하여 사용자 스크립트를 호출하는 방법을 아는 사람이 있습니까?(그 외에는 보통 %%%var%%% 변수)


편집하다:

사용자 스크립트는 Xcode 메뉴바(창과 도움말 메뉴 사이)에 있는 스크립트 메뉴를 통해 액세스할 수 있습니다.내 질문은 "스크립트 실행" 빌드 단계 스크립트에 관한 것이 아닙니다.다소 모호하게 남겨둔 점 사과드립니다.

도움이 되었습니까?

해결책

사용자 스크립트에 매개변수를 전달할 수 없습니다. 대신 사용자 스크립트는 작업 중인 컨텍스트에서 작동합니다(예:선택한 파일, 선택한 텍스트 등).

사용자가 실제로 원하는 것이 무엇인지 확인하려면 컨텍스트를 사용해야 합니다.

다른 팁

사용자 스크립트는 Xcode 메뉴바(창과 도움말 메뉴 사이)에 있는 스크립트 메뉴를 통해 액세스할 수 있습니다.그들을 또 뭐라고 불러야 할지 몰랐습니다.내가 묻는 것은 "스크립트 실행" 빌드 단계 스크립트가 아닙니다.

나는 당신이 다음과 같은 일을 할 수 있다고 가정합니다 :

#!/bin/bash
result=$( osascript << END
tell app "System Events"
  set a to display dialog "What shall be the result?" default answer ""
end tell
return text returned of a
END
)
# do stuff with $result

사용자에게 메시지를 표시하고 응답을 캡처할 수 있는 유틸리티 스크립트가 내장되어 있습니다.

예를 들어 문자열을 입력하라는 메시지를 표시한 다음 이를 기반으로 특정 작업을 수행할 수 있습니다.

문자열 프롬프트는 다음과 같습니다:

STRING = `%%%{PBXUtilityScriptsPath}%%%/AskUserForStringDialog "DefaultString" "DefaultWindowName"`

눈치채셨다면, 정적 경로를 사용하여 작성한 AppleScript를 호출하고 있는 것뿐입니다.원하는 경우 자신만의 applescript 대화 상자를 작성하여 거기에 배치할 수 있으며 번거로운 osascript 구문이 필요하지 않습니다.다른 것(파일, 폴더, 응용 프로그램 등)이 있습니다.

사용자 스크립트 문서

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top