0
Я пытаюсь получить данные между 15 минутами из файла журнала, но sed не работает, и он генерирует команду sed: command garbled:/38. Здесь 38 - значение min1.Ошибка команды Sed
Current_Time_in_Seconds=`date +"%T" | awk -F: '{ print ($1 * 3600) + ($2 * 60) + $3 }'`
subtract_mins() {
Fifteen_minute_before=`expr $Current_Time_in_Seconds - $1`
echo $Fifteen_minute_before
}
Change_Time_into_Seconds() {
Fifteen_minute_before1=`subtract_mins $1`
sec=`expr $Fifteen_minute_before1 % 60`
i=`expr $Fifteen_minute_before1/60`
min=`expr $i % 60`
hrs=`expr $i/60`
timestamp=`(printf "%d:%02d:%02d" $hrs $min $sec)`
echo "$min $hrs"
}
sDate= date +"%d-%b-%y"
Curr_hrs=`date +"%T" |awk -F: '{ print ($1)}'`
Curr_min=`date +"%T" |awk -F: '{ print ($2)}'`
timestamp=`Change_Time_into_Seconds 900`
hrs1=`echo $timestamp | cut -f 2`
min1=`echo $timestamp | cut -f 1`
sed -n '/'$sDate' '$hrs1':'$min1':[0-6][0-9]/,/'$sDate' '$Curr_hrs':'$Curr_min':[0-6][0-9]/p' /srvrs/mvprd/bea/user_projects/domains/mvwlp_prd/servers/mvwlp_s1/logs/mvwlp_s1_yyyy_MM_dd_hh_mm.log> /srvrs/mvprd/scripts/MultiVU_Service_count/output/out_1.txt
Это не работает на самом деле сейчас это не говорит, что СЭД является grabled но выход не наступает –
Возможно, в вашем файле нет соответствия для этого шаблона. – SLePort
@ Kenavoz Я искал шаблон, который был там, но проблема в строке, где я сжимаю строку: - timestamp = 'Change_Time_into_Seconds 900' hrs1 =' echo $ timestamp | cut -f 2' min1 = 'echo $ timestamp | cut -f 1' эти два не могут получить правильные значения –