$tag9700
if文に問題があります。デフォルトで値が存在する場合は、合計に別々に値を書きたいと思います。そうでない場合 9700l.log と 。$tag9701
9700l.log
9701l.log
9700=,
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:-...}