# Shell : if文でper Command check
作成理由:
Healthcheck Script(2021/12/19)を作成して作業で使ってみた。
以前よりはHealthcheckの時間は短縮できたけど、
オペレーターと作業者の間Command実行結果について、確認しなければならない。
一回くらいならいいけど、Scale outごとにHealthcheckを実施するため、
お互い疲れてしまう。
それでチームの人と相談して、最後のLineに全てのStatus確認結果を分かるように
Scriptを修正することにした。
最終コードLink
作成Point
### [2021/12/29]
# 01. なるべく確認コードのTemplateは少なくする
# 02. 確認に必要なコマンドをif文へそのまま入れると可読性が落ちるため、
# grepなどに使うkeywordという変数を入れる
# 03. なるべくファイルは作らずに処理できるようにする(管理が面倒)
# 04. Backgorundで処理時間を節約する
# まだ、望む順番で実行できるかは分からない
# 05. SizeでStatusを確認する場合、固定値ではなく範囲でCheckする
# Sizeが若干変わる箇所に適用
まず、if文のTemplateを作成みたが、失敗(・ω・)ノ
status_ok="OK"
status_ko="KO"
keyword="complete"
check_command="grep -i 'complete' test.txt"
if [ "${check_command}" == "complete" ] ; then
echo ${status_ok}
else
echo ${status_ko}
fi
Console上では問題なく動作したが、なぜ変数としては動作しないのか
色々試して見た結果、原因は [' ']だった。
#not work
chekc_command="grep -i 'complete' test.txt"
#work
chekc_command="grep -i complete test.txt"
#work
chekc_command="grep -i ${keyword} test.txt"
変数指定の際は、クォーテーションに注意が必要そうだ。
Author And Source
이 문제에 관하여(# Shell : if文でper Command check), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jcy9033/Shell-if文でper-Command-check저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)