A resposta aceita de Joseph R. com a história é boa, mas vamos ver como ela pode ser usada.
ptx
gera um índice de termo permutado ("ptx") a partir do texto. Um exemplo é mais fácil de entender:
$ cat input
a
b
c
$ ptx -A -w 25 input
:1: a b c
:2: a b c
:3: a b c
^^^^ ^ ^^^^-words to the input's right
| +-here is the actual input
+-words to the input's left
Abaixo, à direita, você vê as diferentes palavras da entrada e o contexto das palavras esquerda e direita ao seu redor. A primeira palavra é "a". Ocorre na linha um e é seguido por "b" e "c" à sua direita. A segunda palavra é "b", que ocorre na linha dois com "a" à esquerda e "c" à direita. Finalmente, "c" ocorre na linha três e é seguido por "a" e "b".
Com isso, você pode encontrar o número da linha e as palavras ao redor de qualquer palavra em um texto. Isso soa muito como grep
, hein? A diferença é que ptx
entende a estrutura do texto, em unidades lógicas de palavras e frases. Isso torna a saída contextual ptx
mais relevante ao lidar com texto em inglês que grep.
Vamos comparar ptx
e grep
, usando o primeiro parágrafo do tablóide americano de James Ellroy :
$ cat text
America was never innocent. We popped our cherry on the boat over and looked back with no regrets. You can’t ascribe our fall from grace to any single event or set of circumstances. You can’t lose what you lacked at conception.
Aqui está grep
(com as correspondências de cores alteradas manualmente para serem cercadas por //
):
$ grep -ni you text
1:America was never innocent. We popped our cherry on the boat over and looked back with no regrets. /You/ can’t ascribe our fall from grace to any single event or set of circumstances. /You/ can’t lose what /you/ lacked at conception.
Aqui está ptx
:
$ ptx -Afo <(echo you) text
text:1: /back with no regrets. You can’t ascribe our fall/
text:1: /or set of circumstances. You can’t lose what you/
text:1: /. You can’t lose what you lacked at conception.
Como grep
é orientado a linhas, e este parágrafo é uma linha, a grep
saída não é tão concisa ou útil quanto a saída ptx
.