シェル・スクリプトを実行すると世界が広がる
アプリにシェル・スクリプトを実行させることが出来ます。
var app = Application.currentApplication(); app.includeStandardAdditions = true app.doShellScript(" echo 1 " )
シェル・スクリプトの戻り値も取れます
var app = Application.currentApplication(); app.includeStandardAdditions = true var ret = app.doShellScript(" echo 1 " ) ret //=> 1
戻り値を使って色々
今日の日付を取得したり
var app = Application.currentApplication(); app.includeStandardAdditions = true var today = app.doShellScript(" /usr/local/bin/date -I " ) today //-> 2014-12-08
Privileges の例外が出る場合。
これは、システムの環境設定で、権限を付与したらイケルと思います。(⇛参照
ruby起動したり
var app = Application.currentApplication(); app.includeStandardAdditions = true app.doShellScript(" /usr/bin/env ruby -e 'puts true' " )
現在のIPアドレスを調べたり
var app = Application.currentApplication(); app.includeStandardAdditions = true current_ip = app.doShellScript(" ipconfig getifaddr en0 " )
まとめ、コマンドを実行できると無限に広い
今回の基本構文は、次のとおりです。
var app = Application.currentApplication(); app.includeStandardAdditions = true var ret = app.doShellScript(" echo 2 " )//<=ここにコマンドを書く
Applicationにない機能(doShellScript)を includeStandardAdditionsで有効にして、シェルを実行しました。