Portál AbcLinuxu, 13. května 2025 00:14
ABCD
a zároveň chcu vidět ještě pět znaků před stringem a pět po něm. Něco takového:
grep -o .....ABCD..... soubor.txtAsi by to šlo napsat líp, ale v regexech docela tápu.
grep -oP .{5}ABCD.{5}toto funguje taky a je to takové elegantnější jak ďoubat řadu teček.
s=ABCD; tr -d '[[:cntrl:]]' < soubor.txt | grep -Eo .{5}$s.{5}Ale možná jenom nechápu zadání. Taky se mi moc nezdá, naco tam musí být ty znaky před a po sekvenci. Trochu pochybuju že toto nějaký gui editor vůbec umí.
Taky se mi moc nezdá, naco tam musí být ty znaky před a po sekvenci.Asi ho zajímá kontext, ale to ten grep přesně vypíše, případně si na to může napsat vlastní jednoduchý skript třeba v Pythonu. Spíš mě překvapuje, že se hledá přesná shoda, čekal bych, že to bude fuzzy.
user@debian11:~# cat test.txt 000000000000000000000000000 AAAAAAAAAAAAAAAAAAAAAAAAAA BBBBBBBBBBBBBBBBBBBBBBBBB CCCCCCCCCCCCCCCCCCCCCCC DDDDDDDDDDDDDDDDDDDDD EEEEEEEEEEEEEEEEEEEE FFFFFFFFFFFFFFFFFFF user@debian11:~# pcregrep -M 'AAA(\n|.)*CCC' test.txt AAAAAAAAAAAAAAAAAAAAAAAAAA BBBBBBBBBBBBBBBBBBBBBBBBB CCCCCCCCCCCCCCCCCCCCCCC
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.