2009-12-11 9 views
10

「すべてのファイルを/ Users/......に保存してください」などの単純なメッセージを表示する美しい情報ボックスを描く方法はありますか?Mac上のBashスクリプトは、情報ポップアップを作成します

+0

私の最初の考えはAppleScriptでしたが、私はそれがそうすることができないかもしれないと感じています。このコマンド: 'osascript -e"表示ダイアログ\ "hello \" "'は、 "ユーザーの操作は許可されていません"というエラーを表示します。 http://lists.apple.com/archives/applescript-studio/2002/May/msg00099.html – Joe

+0

ええ、そうです - 鍵は "システムイベント"にダイアログを表示することです; – Shirkrin

+0

ありがとうございました!私は知識が役に立つ日に来ると確信しています。 – Joe

答えて

17

bashスクリプトからapplescriptの断片を実行することができます。 簡単なポップアップは次のようになります。

#!/bin/bash 
/usr/bin/osascript <<-EOF 

    tell application "System Events" 
     activate 
     display dialog "Hello world" 
    end tell 

EOF 

これは(Hello Worldのポップアップが得られる)
それをosascriptをし、実行するためにEOFタグの間AppleScriptを送ります。

+3

'osascript'は10.9でUI要素のプロセスになったので、' osascript -e 'の代わりに 'osascript -e'表示ダイアログを使うことができます。 。 – user495470

0

osascript "System Events"の代わりにcocoaDialogをインストールすることもできます。

cocoaDialogにはインストールする必要があるという欠点がありますが、「システムイベント」よりも柔軟性が高いようです。

ライセンスはGPLなので、別のアプリケーションであるため自由に再配布することができます。

(osascriptは私の端末に少なくともLionの下ではエラーメッセージが返っていました)、戻り値ではポップアップをタイムアウトさせませんでしたし、特定の引用符を必要とするようでした。テキスト)

関連する問題