ぐる式 (貳) より引っ越し作業中.未完.

2005年1月23日日曜日

ダブル・クリックでシェル・コマンドを走らせる二つの方法

実行したいコマンド -> theComannd option argumentsWithSpaces とする. argumentsWithSpaces にはスペースが含まれているとする.

  • AppleScript

    スクリプトエディタを立ち上げて新規作成. "do script with command" に与えられた引数文字列はそのままシェルに渡されるので,スペースを解釈してほしくないときはエスケープ.複数行に渡る場合はそのまま入れる.この場合,定義済み定数の return で連結なんてせんでエエ.あ,それから Hypertalk や Supertalk では定義されていた quot は,こちらでは未定義なのでエラーになる.

    set theCommand to "theComannd option \"argumentsWithSpaces\"" as texttell application "Terminal"   activate<   do script with command theCommandend tell

    実行形式でアプリケーションとして保存.初期画面は出さない.

  • Terminal の外部コマンドというか別プロセスの起動

    theComannd option argumentsWithSpaces と書いたテキスト・ファイルを用意する.拡張子は "command" とする. chmod で実行属性を付加して, cmd + i で creator に terminal を指定する (「このアプリケーションで開く」で「ターミナル」).

両者の違い.「Terminal の外部コマンドというか別プロセスの起動」は別にログイン・プロセスを起動しているようなので,終了後はログアウトしてしまい,ターミナル・ウィンドウの再利用はできない. AppleScript の方は再利用可能.

0 件のコメント:

コメントを投稿