'find' с '-o' и '-exec chown' не работает, как ожидалось [duplicate]

RE в сопоставлении с шаблоном начинается с ^ , который привязывает выражение к началу строки. Если вы хотите, чтобы ваше выражение было где угодно, вам нужно его удалить.

Ваши операторы if ... предполагают, что поля даты / времени находятся в $ 1 и $ 2 , которые также (по определению) не обязательно верны. . Попробуйте вместо этого (это не проверено, потому что у меня нет образца ваших данных)

awk '
    {
        if (match($0, /\<[0-9]{4}-[0-9]{2}-[0-9]{2} [0-2][0-9]:[0-5][0-9]\>/))
        {
            s = substr($0, RSTART, RLENGTH)            
            if (s >= "2014-04-07 23:00") p=1
            if (s >= "2014-04-08 02:00") p=0
        }
    }
    p { print $0 }
' log

Вывод из образца данных

2014-04-07 23:40:33.345 aegsgssdh
wqtqttqtqtq
post
agggsdgg
2014-04-08 01:00:54.777 ggsdgwettwetewt
cvdgwetegdkiytitityi
error
2
03.10.2016, 13:15
0 ответов

Теги

Похожие вопросы