该函数必须检查是否TARGET
为空,如果它为空,我希望它重复,但这次c1TIME=$hours:$minutes:[0-9][0-9]
运行它,如果它仍然是空的,那么c1TIME=$hours:$c1minutes[0-9]:[0-9][0-9]
它应该停止并回显一些信息。
$1
是带有错误的标准日志文件
$TIME
在这种模式下随着时间的推移字符串HH:MM:SS
如果这令人困惑,我很抱歉,我很感激任何帮助
这个函数的详细作用:
首先它需要一个随机时间,12:34:56
在 c1 秒内只读取“5”,然后c1TIME
是12:34:5[0-9]
Target 现在尝试在日志文件中找到 c1TIME 字符串所在的行并打印线。例如,在找到的时间
c1DATE
更改。
其余的其实并不重要 12:34:5[0-9]
12:34:56
就像我上面说的,当TARGET
它为空时它必须再次运行,那么我如何在函数执行时或之后检查 TARGET 呢?
function check() {
c1seconds=`echo $TIME | awk '{print substr ($1,7,8)}' | head -1c`
c1TIME=$hours:$minutes:$c1seconds[0-9]
TARGET=`cat -n $1 | grep "$c1TIME" | awk '{printf "%s\n",$1}' | awk 'sub("$", "")'| head -1`
c1DATE=`cat $1 | grep "$c1TIME" | grep -Eo "[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}" | head -1`
EXCEPTION=`tail -$[$WINDOW_LINES-$TARGET] $1 | grep -c Exception`
ERROR=`tail -$[$WINDOW_LINES-$TARGET] $1 | grep -c Error`
SEMAPHORE=`tail -$[$WINDOW_LINES-$TARGET] $1| grep -c semaphore`
echo $TARGET
return 0
}