Làm cách nào để chia tập tin lớn trên Windows?


75

Có một công cụ để chia tệp văn bản lớn (9Gb) thành các tệp nhỏ hơn để tôi có thể mở nó và xem qua không?

Bất cứ điều gì có thể sử dụng từ dòng lệnh đi kèm với Windows (XP)?

Hay cách tốt nhất để chia nó là gì? Tôi có thể sử dụng 7z để tạo các khối riêng biệt và sau đó giải nén một trong số chúng một cách riêng biệt không? Nó sẽ có thể đọc được hay nó cần tất cả các phần khác để giải nén vào tập tin lớn một lần nữa?

Cập nhật

Tôi kết hợp nhanh kịch bản python 48 dòng chia tệp lớn thành 0,5 GB dễ mở ngay cả trong vim. Tôi chỉ cần xem qua dữ liệu về phần cuối cùng của nhật ký (vâng, đó là tệp nhật ký). Mỗi bản ghi được chia thành nhiều dòng nên grep sẽ không làm.


Tôi thấy bạn chỉnh sửa để đề cập đến grep. Bạn đã cài đặt cygwin hoặc unxutils chưa? Bạn có thể đã sử dụng grep -nvới headtailđể xem các đoạn của tệp. Ví dụ, grep -n "something" file.txttrả về 95625: something. Bạn muốn xem dòng đó và 9 dòng bên dưới nó với tổng số 10 dòng : head -n 95635 file.txt | tail -n 10.
John T

Tôi nhận thấy bạn đã giải quyết vấn đề của mình, Nếu bạn vẫn ở đó, bạn có thể đăng giải pháp để người khác có thể hưởng lợi không?
Journeyman Geek

Điều này đã được thảo luận chi tiết tại Stack Overflow [1] [1]: stackoverflow.com/questions/159521/ợi
Rishi Dua

Câu trả lời:


43

Có một bộ chia tệp Windows miễn phí có tên là HJSplit

Có sẵn ở đây . Trang web tuyên bố nó có thể phân chia các tệp thuộc bất kỳ loại và kích cỡ nào, nhưng 9GB là một tệp lớn .


1
Theo nhà xuất bản, nó hỗ trợ chia nhỏ các tệp "hơn 100 Gigabyte"
yosh m

8
Tôi đã có thể sử dụng chương trình này để chia một tệp lớn thành các phần nhỏ hơn, nhưng chỉ theo kích thước (kB hoặc MB). Nó không tôn trọng các dòng, vì vậy nó không hữu ích cho việc chia nhỏ các tệp nhật ký. Nó cũng rất chậm.
nullability

HJSplit hoạt động rất xấu ... Nó không hoạt động với các tệp 5Gb +. Phần lớn nhất của tập tin chỉ mất tất cả. Chunck ngừng truy cập nofuses sau 999 và một số thứ khác không thành công nếu sử dụng số lần truy cập lớn hơn
user2602807

Trên các hệ thống 64 bit, nó chỉ hoạt động với GUI trong Windows. Nếu bạn muốn tự động hóa mọi thứ, đây không phải là một giải pháp
576i

24

Gói GNU Core Utils (có sẵn ở đây cho windows) bao gồm tiện ích Split. Nó hoạt động tốt cho tôi :-)

Tài liệu --help như sau:

Usage: split [OPTION] [INPUT [PREFIX]]
Output fixed-size pieces of INPUT to PREFIXaa, PREFIXab, ...; default
size is 1000 lines, and default PREFIX is `x'.  With no INPUT, or when INPUT
is -, read standard input.

Mandatory arguments to long options are mandatory for short options too.
  -a, --suffix-length=N   use suffixes of length N (default 2)
  -b, --bytes=SIZE        put SIZE bytes per output file
  -C, --line-bytes=SIZE   put at most SIZE bytes of lines per output file
  -d, --numeric-suffixes  use numeric suffixes instead of alphabetic
  -l, --lines=NUMBER      put NUMBER lines per output file
      --verbose           print a diagnostic to standard error just
                            before each output file is opened
      --help     display this help and exit
      --version  output version information and exit

SIZE may have a multiplier suffix: b for 512, k for 1K, m for 1 Meg.

Ví dụ: để phân tách input.txt thành các khối 100Mb, chỉ tách ở cuối dòng,

split input.txt -C 100m

sẽ cung cấp cho bạn các tệp đầu ra có tên xaa, xab, xac, v.v.


2
ví dụ git msys tải xuống bao gồm cả tiện ích.
eis

Cmder thật tuyệt vời vì điều này
Umber Ferrule

15

Một cái khác là GSplit - theo trang web của họ, nó có thể chia các tệp rất lớn (lớn hơn 4Gb <- vì họ đã vượt quá giới hạn 4Gb, tôi đoán họ cũng có thể làm được 9 Gb).

Nhưng, một điều nữa - bạn nói rằng bạn muốn chia nó thành những phần nhỏ hơn để bạn có thể mở nó ra và nhìn vào nó. Nghe có vẻ như một tệp nhật ký rất lớn có lẽ.

Trong mọi trường hợp, để mở các tệp văn bản lớn, tôi có thể khuyên dùng EmEditor - họ tự nhận rằng nó có thể mở các tệp rất lớn (tối đa 250 Gb) và trước đây tôi đã sử dụng nó cho các tệp lên tới 2 Gb. Nhưng trong mọi trường hợp, tôi nghĩ nó có thể là một giải pháp tốt hơn là chia tách.


Tôi vừa mới dùng thử GSplit. Nó hoạt động, mặc dù thông qua một giao diện khó hiểu, nhưng nó không cung cấp bất kỳ cách nào để chỉ phân tách khi ngắt dòng - để tách các tệp dữ liệu ASCII, do đó, nó không quá hữu ích vì việc phân tách sẽ đi được một nửa.
Bay đến

1
@Flyto Nó thực sự có thể chia nhỏ theo dòng nếu bạn chọn "Chia Sau Phổ biến Số" dưới Pieces > Type and Sizemenu. Sau đó, bạn chọn số lượng dòng và dấu phân cách dòng trong hex. Theo mặc định, nó có định dạng Windows CR + LF ( 0x0D0x0A).
nullability

@nullability cảm ơn - Tôi sẽ không nghĩ về điều đó. Nhưng, tôi đã tìm thấy một giải pháp đơn giản hơn nhiều thông qua tiện ích "chia nhỏ" GNU - xem câu trả lời mới của tôi :-)
Flyto

9

Hãy xem Trình xem tệp văn bản lớn , thật tuyệt vời cho những thứ như thế này. Hầu hết các trình lưu trữ và bộ chia sẽ tách tệp thành các phần không thể được sử dụng để đọc từng phần dữ liệu một cách độc lập và đúng cách, bạn cần trích xuất tất cả chúng để lấy lại tệp.

văn bản thay thế

Trình xem tệp văn bản lớn là miễn phí và di động.


3
Liên kết dường như đã bị hỏng, tính năng này hoạt động ngay từ bây giờ: softpedia.com/get/Office-tools/Other-Office-Tools/
mẹo

Liên kết ban đầu (hoặc chỉnh sửa?) Đang hoạt động; Tôi sẽ lấy liên kết đó qua softpedia bất cứ ngày nào! Ngoài ra, chỉ cần thử LTFViewer và thật tuyệt vời, đã mở một tệp 818 MB mà ngay cả Notepad ++ cũng phàn nàn về việc mở. Không có nhiều cách chỉnh sửa các tính năng, nhưng một khi tôi đã xem nhật ký trong LTFViewer, đã echo. > myfile.txtgiải quyết vấn đề logfile 818MB: D
Doktor J

LTFViewer thực sự tuyệt vời (tôi đang sử dụng nó), nhưng có một giới hạn. Tôi đã cố mở một tệp SQL 3 GB với nó, nhưng nó bị đóng băng. Mayby tôi không đủ kiên nhẫn hay gì đó ...
Mathlight

LTFViewer đã làm việc rất tốt cho tôi. Tôi đã sử dụng nó trên một tệp nhỏ hơn (tương đối), chỉ 750 MB, nhưng nó đã mở nó trong chưa đầy 5 giây.
Mike_OBrien

Bạn có thể tải xuống từ kho lưu trữ internet: web.archive.org/web/20151019115332/http://swiftgear.com
quip

8

Người ta có thể sử dụng 7-Zip để tạo các phân đoạn của tệp văn bản ở kích thước nhất định (ví dụ: các phân đoạn 100 MB trong số tệp nhật ký 1,5 GB).

Các tùy chọn chính là - Sử dụng "Lưu trữ" thay vì "Nén" - Sử dụng "Chia thành âm lượng"

Bạn sẽ có thể thấy văn bản trong các tệp .001 (.nnn).

nhập mô tả hình ảnh ở đây


Hình ảnh đính kèm là hoàn hảo!
Erik

5

Bạn có thể sử dụng 7zip để chia nhỏ các tập tin. (Bạn có thể lưu dưới dạng .zip hoặc .7z.) Khi bạn đi tạo tệp lưu trữ, có một tùy chọn gọi là "Chia khối lượng, byte". Chỉ cần chọn bao nhiêu bạn muốn khối.

Và có, bạn có thể giải nén chúng riêng lẻ nếu bạn muốn.

Tách tập tin trong 7zip


1

Có một công cụ trực tuyến phân tách các tệp văn bản nếu bất cứ ai đang tìm cách tách tệp nhanh chóng. http://www.textfilesplitter.com .

Làm việc tuyệt vời cho tôi. Và chia nhỏ các tập tin tôn trọng các dòng đó là những gì tôi đang tìm kiếm. Nó cũng cho biết đó là tất cả các phía máy khách HTML5 để sử dụng an toàn. Tôi không chắc nó có thể lớn đến mức nào nhưng tôi nghĩ nó phụ thuộc vào ram máy của bạn.


4
Bạn có thực sự đề xuất tải lên tệp 9 GB để chia nó trong trình duyệt của mình không ?? Có thật không??
spaghettidba

@spaghettidba: Ông nói rằng nó hoạt động phía máy khách bằng cách sử dụng HTML5. Nếu đó là trường hợp, hơn nó không cần phải được tải lên. Tôi thừa nhận, mặc dù tôi đã có phản ứng giống như bạn khi lần đầu tiên đọc câu trả lời.
mwolfe02

0

Ý tưởng nhìn thấy một phần của tập tin trước khi quyết định làm gì với nó là cho tôi lựa chọn tốt nhất.

Ứng dụng Trình xem văn bản lớn có thể được cài đặt trên Windows thông qua Microsoft Store và nó cung cấp tùy chọn để cắt tệp theo kích cỡ. Cũng có thể là nó sử dụng cùng một trình soạn thảo đã đề cập trước đó (đằng sau hậu trường), nhưng tùy chọn cài đặt nó từ một nguồn đã biết là IMHO tốt hơn so với các liên kết thay thế được cung cấp. Nó làm việc rất lớn đối với tôi.

Vấn đề duy nhất nếu chia theo kích thước là nó không nhất thiết phải phá vỡ tệp ở một nơi tốt, vì vậy bạn có thể phải chỉnh sửa nó để nắm bắt chính xác nội dung bạn muốn.


1
Vui lòng chỉnh sửa câu trả lời của bạn để bao gồm tên của ứng dụng, để nó có thể được lập chỉ mục và tìm thấy bởi tìm kiếm.
Scott
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.