ifステートメントの値をファイルに書き込む

ifステートメントの値をファイルに書き込む

$tag9700if文に問題があります。デフォルトで値が存在する場合は、合計に別々に値を書きたいと思います。そうでない場合 9700l.log と 。$tag97019700l.log9701l.log9700=,9701=,9700l.log

tag9700=`egrep -Eo '9700=[0-2]{0,9}' $filename-PDK-AP-LXFXMR-01*.log`

if [ $tag9700 -eq 0 ]
then
    echo $tag9700 >> /home/user/9700l.log
else
    echo '9700=,' >> /home/user/9700l.log
fi

tag9701=`egrep -Eo '9701=[A-Z]{0,9}' $filename-PDK-AP-LXFXMR-01*.log`

if [ $tag9701 -eq 0 ]
then
    echo $tag9701 >> /home/user/9701l.log
else
    echo '9701=,' >> /home/user/9701l.log
fi

その結果、9700l.logファイルは次のようになります。

9700=1
9700=0
9700=,(only if it isn't a value grepped in the intial $tag9700)

同じシナリオが適用されます$tag9701

ベストアンサー1

tag9700=`egrep -Eo '9700=[0-2]{1,9}' $filename-PDK-AP-LXFXMR-01*.log`
echo "${tag9700:-,}" > 9700.logfile

最小限の一致が必要です1。その後、一致が失敗した場合は、bashを使用してプロパティを置き換えることができます。${var:-...}

おすすめ記事