gpt4 book ai didi

linux - 遇到 "find:/data/cdr/cdr-ivr.log: No such file or directory"后 Bash 脚本退出

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:59:24 24 4
gpt4 key购买 nike

我正在尝试编写一个脚本来访问不同的服务器,查找特定文件的更新时间并返回进一步处理的时间。问题是当在特定服务器上找不到文件时脚本退出,有人可以帮忙吗?

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 " ")

任何帮助将不胜感激。谢谢

最佳答案

当您已经知道文件的位置时,为什么还要使用 find?为什么不检查文件是否存在,然后对其进行处理?

if [[ -f "/data/cdr/cdr-ivr.log" ]]; then
#code here
#more code here
...

关于linux - 遇到 "find:/data/cdr/cdr-ivr.log: No such file or directory"后 Bash 脚本退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19842867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com