Ask Your Question
0

Pouzitie grepu

asked 2014-11-09 16:25:38 +0100

anonymous user

Anonymous

updated 2014-11-09 16:35:15 +0100

anonymous user

Anonymous

Rieším nasledujúcu vec. Chyby ze souboru apache.log, tj. řádky obsahující [error], přidejte na konec souboru error.log.

Moje riešenie: grep '[error]' apache.log >> error.log # to mi vypise aj tie riadky kde je ten string [error] v slove, teda aj ako substringy

Chcem sa opytat ako by to bolo, ak by som chcel [error] iba ako string na riadku skusal som nieco ako grep '\<[error]\>', ale to mi velmi nefungovalo bude tam problem s tym [ ]? skusal som to aj escapovat cez \, ale tiez nepomahalo.

edit retag flag offensive close delete

2 Answers

Sort by » oldest newest most voted
0

answered 2014-11-09 16:31:19 +0100

Josef Kokeš gravatar image

updated 2014-11-09 16:37:13 +0100

1) Hranatá závorka má v regulárním výrazu speciální význam. Pokud se má použít doslova, je potřeba ji ošetřit zpětným lomítkem. Nebo použít filtr, který nepoužívá regulární výrazy ale prosté texty (fgrep).

2) Spíš než \< a > je vhodné se podívat, jestli by se to nedalo řešit s ^ nebo $.

edit flag offensive delete publish link more
0

answered 2014-11-09 17:31:09 +0100

Vadim Petrov gravatar image

Tadyto vypadá, že podle tvejch požadavků funguje:

cat apache.log | grep '\[error\]' >> error.log

Jen nerozumim, pročs tam rval ty <>.

edit flag offensive delete publish link more

Your answer

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!

Add answer

[hide preview]

Stats

Asked: 2014-11-09 16:25:38 +0100

Seen: 166 times

Last updated: Nov 09 '14