@Joseph R. jawaban yang diterima dengan sejarah itu baik, tapi mari kita lihat bagaimana itu bisa digunakan.
ptx
menghasilkan indeks istilah yang diizinkan ("ptx") dari teks. Contoh paling mudah dipahami:
$ 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
Di sebelah kanan Anda melihat kata-kata yang berbeda dari input dan konteks kata kiri dan kanan di sekitarnya. Kata pertama adalah "a". Ini terjadi pada baris satu dan diikuti oleh "b" dan "c" di sebelah kanannya. Kata kedua adalah "b", yang muncul pada baris dua dengan "a" di sebelah kiri dan "c" di sebelah kanan. Akhirnya, "c" muncul pada baris ketiga dan diproses oleh "a" dan "b".
Dengan menggunakan ini, Anda dapat menemukan nomor baris dan kata-kata di sekitarnya untuk kata apa pun dalam teks. Ini kedengarannya seperti grep
, eh? Perbedaannya adalah yang ptx
memahami struktur teks, dalam satuan kata dan kalimat yang logis. Ini membuat output kontekstual ptx
lebih relevan ketika berhadapan dengan teks bahasa Inggris daripada grep.
Mari kita bandingkan ptx
dan grep
, gunakan paragraf pertama Tabloid Amerika 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.
Ini grep
(dengan pencocokan warna diubah secara manual untuk dikelilingi oleh //
):
$ 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.
Inilah 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.
Karena grep
berorientasi pada garis, dan paragraf ini semuanya satu baris, grep
outputnya tidak begitu ringkas atau membantu seperti output dari ptx
.