2016-05-08 23 views
0

私はcppプロジェクトを自動的に管理できるようにリンゴスクリプトを作ろうとしています。私はジェンキンスも使用しました。applescript:実行端末を終了する方法

基本的に、cppプロジェクトは無限ループの一種で、端末で実行されます。ジェンキンスは20秒ごとにそれを再構築して実行します。言い換えれば、私のPCは、以下のタスクを行う必要があります:
1)プロジェクトを再構築します。
2)プロジェクトを実行します。
3)20秒待つ。
4)端末を閉じます。

しかし、私が4に到着すると、ダイアログがポップアップします。このウィンドウを閉じますか?
「閉じる」ボタンをクリックする必要があります。

私の質問は、どのように4)を自動的に行うために、AppleScriptでコード化するのですか?これは役立つかもしれないかしら

tell application "Terminal" 
    do script "cd /Users/Shared/Jenkins/Home/workspace/test" 
    do script "make clean" in window 1 
    do script "make" in window 1 
    do script "./matrix.out" in window 1 
    delay 20 
    close window 1 # problem's here 
end tell 

答えて

0

ただし、私が4になると、ダイアログがポップアップします。このウィンドウを閉じますか?だから私は "閉じる"ボタンをクリックする必要があります。

しかし、あなたはあまりにも(システムイベントスルーGUIスクリプト経由)AppleScriptを使用して、あなたが言った、何も今のところ問題はありませんことを行うことができます。

tell application "Terminal" to activate 
tell application "System Events" 
    tell application process "Terminal" 
     tell its window 1 
      tell its sheet 1 
       click button "Close" 
      end tell 
     end tell 
    end tell 
end tell 
0


は、ここに私のAppleScriptで Running process in background after closing terminal

問題は、あなたが最後にターミナルで実行していることは、プロセス(行列であることかもしれません。窓を閉じることによって殺されるだろう、あなたはそれを望んでいない、そう?したがって、それをやめないように、(可能であれば)説明されているテクニックを使って、matrix.outスクリプトを変更する必要があるかもしれません。

matrix.outを実行可能(実行可能にするか、キロメートルを使用する)にして、バニラのAppleScriptを使用して「開く」だけで問題を解決することもできます。

関連する問題