さまざまなソースとメッセージのテキストファイルのレコード数を確認する方法、レコードがゼロではありません。

さまざまなソースとメッセージのテキストファイルのレコード数を確認する方法、レコードがゼロではありません。

実行して数を生成する選択クエリがあります。たとえば、次のレコードを含むテキストファイルに回答をエクスポートします。

    Unprocessed record for A Sources
----------------------Unprocessed record count for ABC SOURCE ------------------
abc_count=            0
--------------------Unprocessed record count for CDE Source --------
CDE_count=            0
-----------------------Unprocessed record count for DEF Source -----------------
DEF_count=            0
------------------Unprocessed record count for GHI Source ----------------------
GHI_count=            56

上記のソースの数がゼロでないことを確認し、そうでない場合は、必要なチームにメールで送信するUnixコマンドを作成したいと思います。

答え1

目的のプロセスの2番目の列の出力を取得するために使用できます。0grepの場合は、目的のメッセージまたは目的の件名とアドレスを持つメッセージを取得できます。事前定義された複数の文字列を繰り返すことができます。
awktest
echomailmailx

以下の回答は完全に質問に提供された結果に基づいており、追加のチェックで同じパターン出力が発生すると仮定します。

for CHECK in $(awk '{print $1}' output.txt | grep count=| cut -d"=" -f1)
do
if [ $(grep $CHECK output.txt | awk '{print $2}') -ne 0 ]
then  
echo "$(grep $CHECK output.txt")" | mailx -s "CHECK ABC PROCESS" [email protected]
fi
done

答え2

 awk '/[[:digit:]]/ { if ($2 == 0) { system("echo \""$0"\" | mailx -s \"Check Count\" [email protected]") } }' countfile

awkを使用して、数値を含むすべての行を確認できます。その後、awkのシステム機能を使用して電子メールを送信します。

注意事項 - これらのソリューションを実装する前に、コマンドの注入に関連するリスクを判断する必要があります。

関連情報