Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> polecenie grep
auto-all
post 6.10.2011, 20:11:51
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 7
Dołączył: 2.04.2011
Skąd: Wawa

Ostrzeżenie: (0%)
-----


Witam

Potrzebuje polecenia grep które wykona następującą czynność:
Pobierze wszystkie dane z ostatnich 60 sekund tj.

W pliku mam np.:
2011-10-06 12:11:01
2011-10-06 12:11:02
2011-10-06 12:11:03
2011-10-06 12:11:04
2011-10-06 12:11:05
2011-10-06 12:11:05
2011-10-06 12:11:08
2011-10-06 12:11:10
2011-10-06 12:12:01
2011-10-06 12:12:02
2011-10-06 12:12:03

I teraz chciałbym aby o godzinie 2011-10-06 12:12:04 pokazało mi wszystkie wpisy od 2011-10-06 12:11:04
Daty się powtarzają, daty ułożone są w pliku chronologicznie

  1. grep -ae '2011-10-06 12:1[1-2]:[0-9][4-9]' plik
komenda nie zda egzaminu gdyż nie zwróci np. 2011-10-06 12:12:03

Ma ktoś może inny pomysł na skonstruowanie tej komendy?

Daty mogą zostać również zapisane w formacie UNIX, jeśliby to pomogło

Ten post edytował auto-all 6.10.2011, 20:21:53
Go to the top of the page
+Quote Post
abort
post 26.10.2011, 10:02:49
Post #2





Grupa: Zarejestrowani
Postów: 590
Pomógł: 107
Dołączył: 25.10.2011

Ostrzeżenie: (0%)
-----


Kod
grep -ae '2011-10-06 12:1[1-2]:[0-9][4-9]' plik


taki pattern spowoduje załapanie się wszystkich linii, w których wystąpi data w formacie:

"2011-10-06 12:1x:yz", gdzie:
- x=1 lub 2
- y jest dowolną cyfrą
- z jest cyfrą większą lub równą 4

Nie złapie Ci także daty: "2011-10-06 12:11:03"

Poprawny pattern:
Kod
grep -ae '2011-10-06 12:1[1-2]:[0-5][0-9]' plik


Wiesz, dlaczego?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 07:33