【问题标题】:Sed command garbled Errorsed命令乱码错误
【发布时间】:2016-10-06 18:21:37
【问题描述】:

我正在尝试从日志文件中获取 15 分钟之间的数据,但 sed 无法正常工作并生成 sed: command garbled: / 38 错误。这里 38 是 min1 的值。

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

【问题讨论】:

    标签: shell sed solaris


    【解决方案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
    

    或者只是将您的 sed 命令用双引号括起来:

    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
    

    【讨论】:

    • 它现在实际上不工作它并不是说 sed 被抓取但输出不来
    • 您的文件中可能与此模式不匹配。
    • @Kenavoz 我已经搜索了那里的模式,但问题出在我拆分字符串的那一行:- timestamp=Change_Time_into_Seconds 900 hrs1=echo $timestamp | cut -f 2 min1=echo $timestamp | cut -f 1 这两个无法获得正确的值
    猜你喜欢
    • 1970-01-01
    • 2015-07-05
    • 1970-01-01
    • 2015-08-02
    • 2014-09-21
    • 1970-01-01
    • 2017-12-21
    • 2016-11-17
    • 2013-01-28
    相关资源
    最近更新 更多