シェルスクリプトを使用して時刻を記録します

始めたばかりに適したこのホワイトペーパーでは、簡単に理解します。偉大な神は読んでいません。ハハ。

私たちは、展開を完了するために、自動展開ジェンキンス、ボタンを使用する場合。しかし、多くの白も、何が特定のボタン操作の下で行われていたことを知っている必要があります。

この記事は主にシェルスクリプトに関係しているので、ジェンキンス部分は単純です。ボタンを押しジェンキンス建物は、おそらく操作手順は以下のとおりです。コンパイラパッケージは - シェルスクリプトを実行> - >指定されたサーバに送信します。

私たちは、シェルスクリプトの例を見てみましょう。

APP_NAME = lbccrm.jar 

P_ID = ` psの -ef | grepを javaの| grepの $ APP_NAME | AWK  ' {$ 2印刷} ' '。

エコー " ######## $ SERVICE_NAMEプロセスのpidは次のとおりです。$ P_ID ######## " 
であれば [ " $ P_ID " == "" ]; その後、
        エコー ######## $ SERVICE_NAMEプロセスが存在しないか、ストップ成功######## 

        エコー " ######## $ SERVICE_NAMEプロセスを殺す開始し、pidは次のとおりです。$ P_ID ######## 
    キル - 9 $ P_ID
Fiの

スリープ 2 
current_dir = $(CD ` dirnameに $ 0 `; PWD エコー " ######## current_dirがある:$ current_dir ######## " 
nohupを /データは/ opt / jdk1。8 .0_181 / binに/ javaの-jar $ current_dir / $ APP_NAME> $ current_dir / lbccrmlog。ファイル   2 >&1エコー " ######## $ APP_NAMEが成功########です"

次に、このスクリプトは、特にすべてで何を行っています。いくつかのコードの知識、人が学んだことがない場合でも、シェルスクリプトは、半分を読み取ることができるはずです。ここで私は、単にそれは実際には非常に簡単ですが、それを見ていきます。

= APP_NAME lbccrm.jar定義された変数
PS = `P_ID -ef | grepのジャワ| grepのAPP_NAME $ |のawk '$ {2}を印刷し' `;我々のアプリケーションPID取得
echoコマンドは、出力テキストです
IFは、[ "$ P_IDは" == ""];その後、
        エコー"$ ######## SERVICE_NAMEプロセスがない########成功またはSTOP" EXISTS 
他に
        エコーを「####### $ P_ID ########」:キルの$ SERVICE_NAMEの#begin、PIDされているプロセス
    のkill -9 $ P_IDの
Fi回線
プログラムを殺害した後P_IDを見つけたことを意味します
= $ current_dir(CD `$ 0 'をDIRNAME; PWD )カレントディレクトリを取得します
nohupを/data/opt/jdk1.8.0_181/bin/java -jar $ current_dir / $ APP_NAME> $ current_dir / lbccrmlog.file 2>&1&再起動の手順
 
 

 

おすすめ

転載: www.cnblogs.com/feiyangbahu/p/12486401.html