내가 문서를 다음과 쓴 :rb-appscript를 통해 키 체인을 어떻게 스크립팅합니까?
require 'rubygems'
require 'appscript'
loginKeychain = Appscript::app('Keychain Scripting').keychains['login.keychain']
userName = loginKeychain.keys[its.name.eq(name)].password.get
업데이트 : 터미널을 통해 스크립트를 실행하는 경우, 그것은 처음 성공하고 나서 종료하고 터미널을 다시 시작할 때까지 아래의 오류를 반환; 때문에 신비 오류로 및 키 체인 스크립팅이 일반적으로 버그를 보인다, 내가 MacRuby를 사용하기로 결정 :
/Library/Ruby/Gems/1.8/gems/rb-appscript-0.5.3/lib/appscript.rb:539:in `_send_command': CommandError (Appscript::CommandError)
OSERROR: -600
MESSAGE: Application isn't running.
COMMAND: app("/System/Library/ScriptingAdditions/Keychain Scripting.app").keychains["login.keychain"].keys[its.name.eq("a name")].password.get()
UPDATE 2 : 및
오류가 간헐적으로 반환 ... 반복합니다. 차라리 스크립팅을 통해가는 것보다, 직접 Keychain Services를 호출하는 MacRuby Keychain Wrapper 라이브러리를 발견
require 'keychain-wrapper/keychain'
MRKeychain::GenericItem.item_for_service(service_name).password
- 쉬운
- 보다 효율적인
- 작품은 완벽하게
완료.
당신은 성공적으로 키 체인을 파이썬으로 스크립팅 했습니까? AppleScript 편집기에서 AppleScript로 잘 작동했습니다. Ruby로 번역하기 전에 프로토 타입을 제작했습니다. –
예 - 저는 Python 및 Appscript로 작은 테스트를 실시했습니다. ASTranslate를 사용하여 검사를 클릭하여 실제 이벤트를 응용 프로그램에 보내십시오. 죄송합니다. Ruby를 직접 도울 수 없습니다. 나는 파이썬 사람이고 Ruby를 모른다. – Clark
Python 스크립트는 어떻게 실행 했습니까? 터미널에서 실행했을 때도 똑같은 일이 발생했습니다.
–