osascriptは補助アクセスを許可されていません。(-1728)


15

脚本:

#!/usr/bin/osascript
tell application "System Preferences"
    activate
    set current pane to pane "com.apple.preferences.users"
    delay 2
    tell application "System Events"
        click radio button "Login Items" of tab group 1 of window "Users & Groups" of application process "System Preferences"
    end tell
end tell

このスクリプトへの支援アクセスを提供するにはどうすればよいですか?これを「スクリプトエディター」から実行する場合、「セキュリティとプライバシー」の「アクセシビリティ」で「スクリプトエディター」を有効にするだけです。

しかし、ユーザーの介入なしに実行するには、これ(および他のいくつかの同様のスクリプトファイル)を実行する必要があります。私はファイルを.sh、.app、.scpt、.applescript形式で保存して、運が悪ければsudoとしてターミナル経由で実行してみました。

私はこのような他の質問を何の助けもなく経験しました。

編集:対応担当者に感謝します。私たちはすでにこれらの方法を試しましたが、それらは疑いもなく機能し、そこに問題があります。Macマシンの数が多すぎて、手動で有効にできません。ユーザーの許可(WindowsのUACのようなもの)を使用して、または可能であればサイレントでターミナルをリストに追加するコマンドを期待していました。

回答:


12

あなたが実行した場合のAppleScript コードを経由osascriptターミナル、あなたが追加する必要があるターミナルをするシステム環境設定 > セキュリティとプライバシー > プライバシー > アクセシビリティ、それ補助アクセスできるようにします。


私はあなたのコードを受け取り、という名前のファイルに保存し、testcodeを使用して実行可能にしましたchmod。それをターミナルで実行すると、次のエラーが表示されました。

./testcode:157:286: execution error: System Events got an error: osascript is not allowed assistive access. (-1728)

次に、ターミナルを[ システム環境設定] > [ セキュリティとプライバシー] > [ プライバシー] > [ ユーザー補助]に追加して、もう一度実行しました。次に、スクリプトを適切に処理して返しました。

radio button Login Items of tab group 1 of window Users & Groups of application process System Preferences

もちろん、そのターゲットに対してシステム環境設定を開きました。


私の場合、発信者はAlfred 3でした。自動的にリストに追加されなかったため、手動でAccessibilityに追加しただけで、スクリプトの呼び出しが機能しました。
フォード

3
端末にセキュリティとプライバシーがありますが、同じエラーが発生します
Kevin

5

「システム環境設定>セキュリティとプライバシー>プライバシー>アクセシビリティ」のアプリケーションリストにあるiTerm 2からコマンド636:751: execution error: System Events got an error: osascript is not allowed assistive access. (-1719)を実行したにもかかわらず、エラーが発生しosascriptました。

システムイベントアプリケーション(内/System/Library/CoreServices/)もそのリストに追加した後、エラーが発生しなくなりました。


これがうまくいったことは驚くべきことです。なぜか知りたいのですが。最初に、他のより明白なアプリケーションをすべて追加しました...無駄です。
Del Brown、

あなたは私の命の恩人です。
alswl

1

リンクの答えの重要なポイントです

LaunchAgentsを初めてロードまたは実行すると、システム環境設定で支援アクセスを設定するように求めるプロンプトが表示されます。既にシステム環境設定を開いている場合は開きませんが、スクリプトテキストファイルがリストに追加されます。

これを許可するには、チェックボックスをオンにする必要があります。

手順1は、セキュリティタブを開き、スクリプトアプリまたは個々のスクリプトにインターフェイスを自動化する権限を許可することです。

ここに画像の説明を入力してください

ステップ2-利益を上げてエラーを回避する-1728


1
残念ながら、これはLaunchAgentでは実際には機能せず、ログが表示execution error: System Events got an error: osascript is not allowed assistive access. (-1719)され、システム環境設定から支援アクセスを許可するように求められません。macOS 10.12.6
swrobel 2017

「支援アクセス」にosascriptをも追加してみてください-少なくとも、内部的に、「osascriptを」のAppleScript扱いしないで、単にコマンドはなく、独自のプロセスとして。。。。次のコードをScriptEditorに貼り付けます:。。。tell application "System Events" to do shell script "osascript -e 'tell application \"System Events\"\n display dialog (items of (name of (every process whose name contains \"sc\") as list) as string)\n end tell'"。。。最後に「osascript」があるプロセスのリストが表示されます(残念ながら、「分離」されていません)。
clemsam lang 2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.