我正在尝试编写一个访问不同服务器的脚本,查找特定文件的更新时间并返回时间以供进一步处理。问题是当在特定服务器上找不到文件时脚本退出,任何人都可以帮忙吗?
while true
do
for i in ocmp1 ocmp6 ocmp7 ocmp8 ocmp9 ocmp10 krrbtc krrbtd krrbte
do
ssh $i '
set -e
x=`hostname`;
echo -e "\n********************************"
echo -e "LATEST $x CDR: ";
echo -e "********************************\n"
x="tail -1 /data/cdr/cdr.log";
a=`find /data/cdr/cdr.log -maxdepth 0 -printf "%TY%Tm%Td%TH%TM%TS"`;
c=`find /data/cdr/cdr-ivr.log -maxdepth 0 -printf "%TY%Tm%Td%TH%TM%TS" -type d | tee log`;
b=`date +"%Y%m%d%H%M%S"`;
a=${a/.*};
c=${c/.*};
SD=$(($b - $a));
当找不到文件并给出以下错误并且脚本退出而不继续时:
********************************
LATEST krrbtc CDR:
********************************
find: /data/cdr/cdr-ivr.log: No such file or directory
bash: line 13: 20131107223022 - : syntax error: operand expected (error token is " ")
任何帮助将非常感激。谢谢