Câu trả lời được chấp nhận của @Joseph R. với lịch sử là tốt, nhưng hãy xem cách nó có thể được sử dụng.
ptxtạo ra một chỉ mục thuật ngữ hoán vị ("ptx") từ văn bản. Một ví dụ dễ hiểu nhất:
$ 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
Ở bên phải bạn nhìn thấy các từ khác nhau từ đầu vào và bối cảnh từ trái và phải xung quanh chúng. Từ đầu tiên là "a". Nó xuất hiện trên dòng một và được theo sau bởi "b" và "c" ở bên phải của nó. Từ thứ hai là "b", xuất hiện trên dòng hai với "a" ở bên trái và "c" ở bên phải. Cuối cùng, "c" xảy ra trên dòng ba và được tiến hành bởi "a" và "b".
Sử dụng điều này, bạn có thể tìm thấy số dòng và các từ xung quanh cho bất kỳ từ nào trong văn bản. Điều này nghe rất giống grep, nhỉ? Sự khác biệt là ptxhiểu cấu trúc của văn bản, theo đơn vị logic của từ và câu. Điều này làm cho đầu ra theo ngữ cảnh ptxphù hợp hơn khi xử lý văn bản tiếng Anh hơn grep.
Hãy so sánh ptxvà grepsử dụng đoạn đầu tiên của Tabloid American của 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.
Đây grep(với các kết hợp màu được thay đổi thủ công để được bao quanh bởi //):
$ 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.
Đây là 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.
Vì grepđược định hướng theo dòng và đoạn này là tất cả một dòng, grepđầu ra không hoàn toàn ngắn gọn hoặc hữu ích như đầu ra từ ptx.