Tôi đang cố tạo từ điển các từ từ một tập hợp các tệp. Có cách nào đơn giản để in tất cả các từ trong một tệp, một từ trên mỗi dòng không?trích xuất các từ từ một tệp
Trả lời
Bạn có thể sử dụng grep
:
-E '\w+'
tìm kiếm cho từ-o
chỉ in phần của dòng phù hợp với
% cat temp Some examples use "The quick brown fox jumped over the lazy dog," rather than "Lorem ipsum dolor sit amet, consectetur adipiscing elit" for example text. # if you don't care whether words repeat % grep -o -E '\w+' temp Some examples use The quick brown fox jumped over the lazy dog rather than Lorem ipsum dolor sit amet consectetur adipiscing elit for example text
Nếu bạn chỉ muốn in mỗi từ một lần, bỏ qua trường hợp, bạn có thể sử dụng sort
-u
chỉ in mỗi từ lần-f
nóisort
bỏ qua trường hợp khi so sánh từ
# if you only want each word once % grep -o -E '\w+' temp | sort -u -f adipiscing amet brown consectetur dog dolor elit example examples for fox ipsum jumped lazy Lorem over quick rather sit Some text than The use
cảm ơn! Tôi đã google trong một giờ cho việc này. Kỳ lạ thay, bằng cách sử dụng "... từ một tài liệu" thay vì "...từ một tập tin văn bản "mang lại cho tôi câu hỏi này là trận đấu đầu tiên – davka
bạn có thể sử dụng ----> grep -o -E '\ w +' testfile.txt | sắp xếp -u -f | tee 5.txt <---- để wirte đầu ra vào một tập tin –
jack yang: hoặc chỉ sử dụng chuyển hướng shell bình thường 'grep ... | sort -u -f> 5.txt' – rampion
Một khởi đầu tốt là chỉ cần sử dụng sed
để thay thế tất cả các không gian với dòng mới, loại bỏ các dòng trống (một lần nữa với sed
), sau đó sort
với -u
(uniquify) cờ để loại bỏ bản sao, như trong ví dụ này:
$ echo "the quick brown dog and fox jumped
over the lazy dog" | sed 's/ /\n/g' | sed '/^$/d' | sort -u
and
brown
dog
fox
jumped
lazy
over
quick
the
Sau đó, bạn có thể bắt đầu lo lắng về dấu chấm câu và lượt thích.
lời giả định tách bằng dấu cách trắng
awk '{for(i=1;i<=NF;i++)print $i}' file
hoặc
tr ' ' "\n" < file
nếu bạn muốn độc đáo:
awk '{for(i=1;i<=NF;i++)_[$i]++}END{for(i in _) print i}' file
tr ' ' "\n" < file | sort -u
với một số punctuations gỡ bỏ.
awk '{
gsub(/["*^&()#@$,?~]/,"")
for(i=1;i<=NF;i++){ _[$i] }
}
END{ for(o in _){ print o } }' file
Ken Church's "Unix(TM) for Poets" (PDF) mô tả chính xác những loại ứng dụng này - lời giải nén ra tập tin văn bản, phân loại và đếm chúng, v.v.
Lệnh tr có thể thực hiện việc này ...
tr [:blank:] '\n' < test.txt
Điều này yêu cầu chương trình tr thay thế khoảng trắng bằng một dòng mới. Đầu ra là stdout, nhưng nó có thể được chuyển hướng đến một tập tin, result.txt:
tr [:blank:] '\n' <test.txt> result.txt
Tham khảo here.
- 1. Trích xuất văn bản từ pdf và các tệp từ
- 2. Trích xuất tiêu đề từ tệp PDF?
- 3. Trích xuất mã VB.NET từ tệp exe
- 4. trích xuất tên tệp từ đường dẫn
- 5. Trích xuất URL từ các tệp văn bản/HTML lớn
- 6. Cách trích xuất các lớp từ tệp .jar?
- 7. trích xuất âm thanh từ một fla
- 8. Trích xuất bảng từ tệp kết xuất mysql.sql
- 9. Trích xuất EXIF từ JPEG
- 10. Cách trích xuất tên tệp từ tên đường dẫn tệp?
- 11. trích xuất các giá trị từ HashMap
- 12. Làm cách nào để trích xuất một tệp đơn lẻ từ tệp lưu trữ từ xa?
- 13. Trích xuất các lỗi chuẩn từ glm
- 14. Trích xuất bảng từ DOCX
- 15. Trích xuất chuỗi từ giữa các trích dẫn
- 16. C++ - trích xuất các số từ một chuỗi
- 17. Trích xuất các danh từ và động từ văn bản
- 18. Trích xuất URL từ chuỗi
- 19. cách trích xuất từ dispatch.json.JsObject
- 20. Trích xuất thông tin từ $?
- 21. Trích xuất tọa độ từ tệp KML BatchGeo bằng Python
- 22. Trích xuất tọa độ từ tệp KML trong Java
- 23. Trích xuất 1 tệp từ tar.gz bằng bash
- 24. Trích xuất hình thu nhỏ từ tệp jpeg
- 25. Trích xuất một tham số từ một URL trong WordPress
- 26. cách trích xuất dữ liệu từ tệp xml bằng notepad ++?
- 27. Trích xuất văn bản từ PDF
- 28. Trích xuất mã băm SHA1 từ tệp torrent
- 29. Trích xuất một cách dễ dàng các dòng từ tệp lớn
- 30. cách trích xuất các byte cụ thể từ một tệp bằng cách sử dụng unix
Bạn có cần ngôn ngữ lập trình nhất định không? – mkmurray
@mkmurray, "shell", "scripting" và "unix" thường có nghĩa là bất kỳ công cụ nào có sẵn trên các hộp UNIX chuẩn - awk, grep, sed, perl, cut và cứ thế. – paxdiablo