我在awk
awk -F"[.: ]" '/Backing up \"/1/2\" on One/ {start = mktime($3" "$2" "$1" "$4" "$5" "$6); hms = sprintf("%s:%s:%s,", $4, $5, $6);} / Backup completed/ {end = mktime($3" "$2" "$1" "$4" "$5" "$6); if (end) {print hms end - start; start = ""; }}' logs.txt
我想搜索模式Backing up "/1/2" on One
并显示以下消息。
我正在获取以下代码的输出,如下所示。如何忽略双引号并搜索模式。
反斜杠不是行上的最后一个字符
答案 0 :(得分:1)
awk
命令中的正则表达式不正确。
您需要在(转发)斜杠\
之前添加反斜杠/
,因为此字符是正则表达式分隔符:
awk '/Backing up "\/1\/2" on One/{...}'
请注意,您不需要在双引号之前添加反斜杠,因为shell不会解释单引号内的字符串。