2017-10-05 8 views
0

私はbashスクリプト "domain-ssl-status.sh"を持っています。私は次のようにスクリプトを実行することができるように、私は2つの引数を持つスクリプトが必要:2つの引数を渡してsslのステータスを取得するBashスクリプト

./domain-ssl-status.sh cname.domain.com状態を|入手| |未取得エラー

domainNameをとステータスは、私の2つの引数

domainNameを= $ 1、状態= $ 2

私はcase文を使用してstatus_mapを作成しようとしたが、運です!私はここでも他のヒントを見たことがあるが、私のことは決してうまくいかないようだ。私のSQLステートメントにはSELECT * FROM DomainSSL WHERE domainName = 'cname.domain.com'が含まれています。

+0

あなたのスクリプト構造の例を見てみましょう。 –

+0

投稿を編集できるように編集します。 ;) –

+0

#!/ bin/bash domainName = $ 1 status = $ 2 while [[$#-gt 0]]; 場合 状態で "$ 1") MSSQL -f CSV -c〜/アプリケーション/ MSSQL/mssql.json -qを行う "domainNameは= '$ 1' DomainSSL SELECT * FROM" ;; を行って 1番出口 ESAC シフト は、それは私が道Iそれを編集させません – jphil1971

答えて

0

書き換えでラフなパス -

#!/bin/bash 
domainName=$1 
status=$2 
echo "Verifying domain" 
case status in 
$status) ping -c 1 $domainName || { 
      echo "Cannot ping $domainName" >&2 
      exit 1 
     } ;; 
*) echo "Invalid argument '$status'" >&2 
    exit 1 ;; 
esac 

sql="SELECT * FROM DomainSSL WHERE domainName='$domainName'" 
mssql -f csv -c ~/applications/mssql/mssql.json -q "$sql" # mark here 
rc=$? 
if ((rc)) # nonzero 
then echo "FAIL: rc $rc on [$sql]" >&2 
else echo "SUCCESS: $sql" 
fi 

また、後で解析のためのstdoutとstderrを保存しようとする場合があります。上記# markから書き換え 、

mssql -f csv -c ~/applications/mssql/mssql.json -q "$sql" >ok 2>oops 
rc=$? 
if ((rc)) # nonzero 
then echo -e "FAIL: rc $rc on [$sql]:\n$(<oops)" >&2 
    case "$(grep SQLSTATE oops)" in 
    *ER_DUP_KEY*) : code to handle duplicate keys error ;; 
    # any other errors you choose to handle . . . 
    *) : code for bailing on errors you don't care to handle ;; 
    esac 
else echo "SUCCESS: $sql" 
fi 

C.F. mysqlのマニュアルhere

これは単なる一般的なテンプレートです。それが役に立てば幸い。ご清聴をお願いします。

+0

私はスクリプトを実行すると、SQLステータスを確認する必要があります、私は番号を取得しようとしています。例。 1-獲得 2-unobtain 3エラー ./domain-ssl-status.sh 'cname.domain.com' 'ステータス|取得できません|取得済み|エラー' – jphil1971

+0

これは私が必要としているものです。 ! 1. 2つのパラメータを受け入れるスクリプトが必要です。2でない場合は無効になります。 2. case文を使用して、パラメータ2のさまざまな処理を処理します。 SQLのdomainSSLStatusIdは文字列ではありません。マップを作成する – jphil1971

+0

なぜそのように具体的ですか? –

関連する問題