Hãy tạo file nén
Xem bai viet bang font ABC
PCWorld VN 12/99
WinZip và PKZip for Windows tự chúng đã đồng nghĩa với việc nén file, nhưng còn nhiều phương pháp nén khác cũng không kém phần thú vị.
Khó có thể hình dung mạng Internet mà không nén file. Nếu các hãng cung cấp phần mềm dùng chung (shareware) không thể đóng gói sản phẩm của họ thành những file nén (archive) cô đọng, thì việc tải xuống sẽ mất rất nhiều thời gian.
Chuẩn nén hiện nay là định dạng zip. Việc sử dụng phổ biến các file nén làm cho chương trình zip trở thành một phần không thể thiếu trong "hành trang" của người dùng. Ngoài ra bạn còn có thể dùng chương trình zip vào nhiều việc khác, chẳng hạn tạo archive cho những file cũ ít dùng đến, nén các file cần chia sẻ với đồng nghiệp và bạn bè.
Chương trình zip quan trọng đến mức nhiều người ngạc nhiên không hiểu tại sao Microsoft lại không đưa nó vào Windows. Chẳng hạn, sẽ thật tiện lợi nếu có các tùy chọn trong trình đơn nhấp nút phải chuột để nén/giải nén các file, xem nội dung các archive. Những chức năng như vậy sẽ cho phép bạn quản lý các file nén giống như quản lý folder vậy.
Như thông thường, các hãng thuộc nhóm ba đã từng bước lấp đầy khoảng trống này. Một số lượng lớn các tiện ích nén shareware đang lưu hành không những cho phép bạn thực hiện các chức năng cơ bản mà còn tích hợp một cách hài hòa các file zip vào trong hệ quản lý file của Windows. Ngoài ra, các công ty có uy tín như PKWare và Niko Mak Computing vẫn tiếp tục bán ra các sản phẩm cốt tử của họ. Bài báo này sẽ xem xét một số chương trình nén mà bạn có thể dùng thay thế, cũng như một vài tiện ích hỗ trợ để công việc nén của bạn dễ dàng hơn.
File nén là gì?
Trước khi bàn đến các sản phẩm, bạn hãy dành thời gian ôn lại một số khái niệm về file nén. Trước hết, không cần thiết phải phân biệt sự khác nhau giữa nén (compressing) và lưu trữ (archiving). Khi nén các file trong một folder, từng file riêng rẽ trong folder đó đều được nén - có nghĩa làm giảm kích thước của chúng. Sau đó tất cả số file đã nén này được lưu thành một file zip duy nhất. Khi unzip (giải nén) file này, chương trình zip sẽ rút từng file ra khỏi file archive và sau đó giải nén để nó trở lại dạng nguyên thủy. Vì các chương trình zip kết hợp hai chức năng này một cách chặt chẽ như vậy nên các từ compress và archive thường bị dùng lẫn lộn. Trên thực tế có chương trình chỉ nén và cũng có những chương trình chỉ lưu trữ, tuy nhiên chúng không được xét đến trong bài báo này.

Hình 1. CleverZip mở file nén trong một cửa sổ giống như Explorer, và file được giới thiệu dưới dạng một folder trong khung bên trái.
Việc nén file phải dùng đến nhiều thuật toán. Về cơ bản, nguyên tắc của một chương trình nén là thay thế các chuỗi và mẫu ký tự bằng ký hiệu. Ví dụ, hàng ký tự đồng nhất gồm 20 chữ x này:
xxxxxxxxxxxxxxxxxxxx
có thể thu nhỏ thành:
~20x
Dấu ngã (~) thông báo có một chuỗi ký tự tiếp theo sau; con số 20 cho biết số ký tự cụ thể; chữ x là ký tự. Như vậy, 20 ký tự đã được thu gọn còn 4 ký tự, tiết kiệm được 80%. Tuy nhiên đối với người khác thì Aạ20x lại chẳng có ý nghĩa gì. Nhưng đối với người biết rõ công thức giải mã, họ sẽ có thể triển khai Aạ20x thành dạng nguyên thủy:
xxxxxxxxxxxxxxxxxxxx
Định dạng zip thịnh hành đến mức zip và archive đã trở thành từ đồng nghĩa trong tiếng Anh. Thực ra, zip không phải là tiện ích nén và lưu trữ đầu tiên, không phải là duy nhất, và cũng chẳng tốt một cách nổi bật. Trước thời kỳ máy tính MS-DOS và World Wide Web, dạng archive phổ biến nhất được gọi là ARC. Mãi tới năm 1989 PkWare mới đưa ra được PKZip và định dạng zip. Nhờ tính hiệu quả và dễ sử dụng (ít ra là đối với một chương trình MS-DOS), PKZip đã trở thành chuẩn trong máy tính.
Cũng may là bạn sẽ rất ít khi gặp file ARC, trừ phi phải làm việc với một đĩa mềm cổ lỗ sĩ. Tuy nhiên, bạn có thể gặp các định dạng mới như ARJ, LZH, RAR, và CAB (đặc biệt là CAB vì đây là định dạng mà Microsoft và nhiều hãng khác sử dụng để phân phối phần mềm trên CD).
Phát triển các kỹ thuật và tiện ích nén mới là công việc hấp dẫn nhiều lập trình viên, và vì thế ngày càng có nhiều tiện ích nén mới xuất hiện trên Web. Một số có tỷ lệ nén tốt hơn so với các chương trình zip; một số khác (không nhiều) lại nén nhanh hơn. Nhưng sự dung hòa hợp lý giữa tốc độ, tỷ lệ nén, và mức độ phổ biến đã giúp cho zip tồn tại được lâu nhất, tính tới thời điểm này và trong cả thời gian tới đây. Nếu thích tìm hiểu thêm về vấn đề này, bạn hãy đến Web site của Archive Comparison Test tại http://www.geocities.com/SiliconValley/Park/4264/act.html. Bạn sẽ tìm thấy thông tin về các tiện ích nén và archive hiện có trên thị trường.
Một trong các tính năng đầu tiên bạn có thể chú ý đến trong Web site ACT là các thử nghiệm được tiến hành theo loại file: file văn bản và WAV, các chương trình thực thi (EXE), v.v... Lý do là vì các loại file khác nhau sẽ có tỷ lệ nén khác nhau (chẳng hạn file TXT có tỷ lệ nén cao hơn file WAV).
Vào folder đúng lúc
Các chương trình zip đầu tiên của Windows có giao diện truyền thống: bạn mở chương trình và đi theo cây thư mục trên ổ đĩa để tìm các file muốn lưu và các file zip cần unzip. Một trong các cải tiến đáng hoan nghênh là khả năng xem nội dung của file zip trong một cửa sổ theo kiểu Explorer. CleverZip là một ví dụ. Hình 1 là kết quả của việc nhấn đúp chuột lên một file có tên VSTASCAN.ZIP. File này xuất hiện trên đầu khung bên trái dưới dạng một folder; trong đó chứa các folder đã được zip; nội dung của file zip xuất hiện ở khung bên phải. Tài liệu đi kèm CleverZip cho biết, bất chấp họ dùng công nghệ nào thì thực chất đó vẫn là cửa sổ Explorer; và cửa sổ Explorer của họ khác với cửa sổ Windows Explorer. Trước hết, phải mở cửa sổ riêng cho từng file zip; bạn không thể duy trì danh sách các file zip ở khung bên trái đồng thời định hướng chúng theo kiểu cây Explorer. Ngoài ra, một số chức năng Windows cũng bị mất tác dụng trong cửa sổ CleverZip; ví dụ, lệnh Find sẽ mở vào Desktop, và menu ngữ cảnh sẽ mất các lệnh như Send To và Create Shortcut. Chưa hết, trên máy tính chạy chương trình này, các cửa sổ CleverZip bị nhấp nháy quá nhiều khi dùng phím Taskbar hoặc Alt+Tab để chuyển tới chúng.

Hình 2. ZipMagic được tích hợp vào Explorer hài hòa đến mức các file zip xuất hiện như những folder, ví dụ như ANTIPOP.ZIP, CDCOPY.ZIP, ERROR.ZIP, và TEMP.ZIP trong hình này.
Tuy nhiên, nói chung thì cửa sổ CleverZip này rất giống Explorer khiến bạn không còn nghĩ đó là một file zip. Bạn có thể cắt, dán, xóa, và sao chép các file; kéo file từ cửa sổ này sang cửa sổ khác; chạy chương trình (ít nhất cũng là các chương trình độc lập không cần file hỗ trợ); và mở tài liệu trong các chương trình mà chúng có liên quan. CleverZip bổ sung một số lệnh vào menu nhấn-phím-phải trong các cửa sổ Windows Explorer. Khi bạn nhấn phím phải lên một file zip và chọn Open to New Folder, CleverZip sẽ tạo một folder cùng tên, giải nén (unzip) file zip đó, và đưa file đã unzip vào folder mới. Ví dụ, nhấn phím phải chuột lên file CDCOPY.ZIP và chọn lệnh tạo folder có tên là CDCOPY rồi đưa tất cả các file của CDCOPY.ZIP vào trong CDCOPY. Nếu cần đưa nhiều phần mềm shareware vào một folder DOWNLOADS, tính năng này sẽ giúp bạn tiết kiệm khá nhiều thời gian. CleverZip cũng cho phép mã hóa file bằng password. Cũng có thể dùng CleverZip để zip (nén) file, nhưng bạn phải mua phiên bản đầy đủ.
Bạn có tin tưởng ZipMagic?
Nếu chưa thỏa mãn với các folder của CleverZip, hãy thử dùng ZipMagic. Cũng có cùng mô hình như CleverZip nhưng ZipMagic tích hợp chặt chẽ hơn với Windows Explorer. Các file zip xuất hiện trong khung bên trái của Explorer và My Computer giống các folder thông thường. Trong khung bên trái của Explorer ở hình 2, ANTIPOP.ZIP, CDCOPY.ZIP, ERROR.ZIP, và TEMP.ZIP trông giống folder nhưng thực chất là các file zip; các file hiển thị trong khung bên phải là file trong archive CDCOPY.ZIP. (Việc phân biệt archive sẽ dễ dàng hơn trong khung bên phải nhờ có từ .ZIP trong biểu tượng folder của archive đó.)

Hình 3. ZipSurfer cho phép bạn có thể xem các nội dung của một archive zip trên Web và chọn những file muốn tải xuống.
ZipMagic cho bạn đầy đủ các chức năng Explorer bên trong một archive. Nhấn đúp lên một tài liệu, bạn sẽ mở tài liệu đó trong chương trình thích hợp. Tổ hợp Alt+Enter làm hiển thị hộp thoại properties của file. Bạn có thể kéo và thả một file archive vào bất cứ đâu: folder, cửa sổ ứng dụng, hay một archive khác. Cũng có thể tạo shortcut trên màn hình cho một file archive. Và cả lệnh Find của Windows cũng hoạt động tốt.
Khác với CleverZip, ZipMagic cho bạn đầy đủ các tùy chọn trong menu ngữ cảnh. Chức năng Send To hoạt động y như trong Explorer. ZipMagic tích hợp vào Explorer hài hòa đến mức bạn không còn phân biệt được cái nào là folder và cái nào là archive. Một đặc điểm vô cùng quý giá song cũng ẩn chứa không ít nguy hiểm; nếu bạn cố thực hiện một chương trình đã archive mà không được cài đặt đúng cách, kết quả sẽ không thể lường trước được.

Hình 4. WinZip vẫn luôn đơn giản: mở các file nén trong một cửa sổ chính, cho phép bạn thực hiện nhiều thao tác giải nén và quản lý file.
ZipMagic có phương pháp khéo léo để unzip một archive: đổi tên để loại bỏ đuôi zip. Ví dụ, nếu bạn đổi tên archive TEMP.ZIP thành TEMP, ZipMagic sẽ tự động tạo ra một folder là TEMP và tiến hành unzip nội dung đó vào trong TEMP. Để archive một folder, bạn chỉ việc làm ngược lại thủ tục này. Truy cập các chức năng của ZipMagic thực chất là chọn lệnh ZipMagic từ menu nhấn-phím-phải. Nhấn phím phải chuột lên một file zip, bạn sẽ có bảng sắp xếp các tùy chọn unzip; còn nhấn lên file không zip bạn được cung cấp các tùy chọn để archive.
ZipMagic còn có nhiều điều ngạc nhiên nho nhỏ. Ví dụ, biểu tượng của một chương trình nằm ngay trong khay hệ thống; nhấn phím phải lên biểu tượng đó, bạn có danh sách các archive zip vừa truy cập, rất giống danh sách tài liệu mới mở nằm ở phía dưới menu File của Microsoft Word. Khi nhấn vào một tên archive, ZipMagic sẽ mở archive đó trong cửa sổ My Computer.

Hình 5. PKZIP cho phép bạn mở vài ba file nén đồng thời.
Nếu thường hay tải xuống các shareware, bạn nên quan tâm đến phần mềm ZipSurfer Netscape của ZipMagic. Khi chọn lựa để tải xuống một file zip từ Internet, ZipSurfer sẽ xác định xem có đọc được file đó hay không; nếu được, nó sẽ mở hộp thoại như trong Hình 3. Ơở đây bạn có thể xem nội dung của archive và chọn file nào muốn tải xuống. Điều này rất tiện trong trường hợp bạn chỉ muốn tải xuống một file trong cả archive lớn, như README hay DIZ.
Hàng loạt tùy chọn của ZipMagic và sự hòa hợp suôn sẻ vào giao diện Windows đã làm cho chương trình này dẫn đầu trong cuộc đua giữa các trình quản lý archive. Tuy nhiên nó có thể quá phức tạp đối với một số công việc zip và unzip đơn giản hoặc không thường xuyên.
Điểm mặt bạn cũ
Sẽ là thiếu sót nếu bài báo này không nói đến 2 "cựu binh" WinZip và PKZip for Windows. Cả hai vẫn dùng giao diện truyền thống, đó là nạp chương trình vào rồi thực hiện các thao tác.
Nico Mak đưa ra phiên bản WinZip 7.0 có diện mạo "bảnh bao" hơn. Nhưng đối với người dùng sành sỏi thì về cơ bản chẳng có gì mới. Nhấn đúp vào file zip để mở hộp hội thoại như trong Hình 4. Từ đây, bạn có thể mở và bung file, thực hiện những công việc quản lý file cơ bản như xóa và đổi tên, quét virus và kiểm tra tính toàn vẹn của archive. WinZip hỗ trợ kéo và thả theo cả hai chiều: kéo các file ra khỏi một archive và thả vào Explorer hoặc ngược lại.
WinZip bổ sung hai lệnh vào menu nhấn-phím-phải của Explorer để bạn có thể bung một file đã nén. Extract To mở file trong WinZip (hộp thoại Extract tự động mở đến folder mặc định). Extract to Folder tự động tạo một folder có tên giống tên file, và bung các file trong archive vào folder đó (thực ra là giống tính năng của CleverZip đã trình bày ở trên).

Hình 6. WinPack32 cũng cho phép mở nhiều file nén cùng lúc và còn hỗ trợ chức năng kéo và thả.
PKZip for Windows 2.6 có các tính năng giống như WinZip, tuy hình thức thì khác. Ưu điểm lớn nhất của nó là bạn có thể mở một số file zip trong cửa sổ PKZip, như trong Hình 5. Trong khi nhược điểm là thiếu các chức năng kéo và thả mà người dùng hy vọng là sẽ có mặt trong một chương trình Windows; để sao chép hoặc di chuyển file từ archive này sang archive khác, bạn phải thông qua một hộp thoại. Tương tự, bạn không thể kéo và thả một file bên ngoài cửa sổ PKZip mà phải bung các file thông qua lệnh và hộp thoại.
PKZip thêm hai lệnh Extract To và Test vào menu ngữ cảnh của Explorer. Extract To nạp chương trình PKZip và mở hộp thoại Extract. PKZip không có tính năng tự động bung một file trong folder cùng tên; bạn phải thao tác một cách thủ công. Lệnh Task kiểm tra tính toàn vẹn của file zip, một tính năng rất được hoan nghênh với những người tải xuống nhiều file và thường có file bị hỏng. Chương trình này không bổ sung lệnh tạo file zip cho menu ngữ cảnh.
Ngoài ra còn hai chương trình khác là WinPack32 của CSDD và 123 Zip! của Galt Technology hoạt động rất giống WinZip và PKZip: khi bạn nhấn đúp lên một file zip, nội dung của nó sẽ hiện trong cửa sổ chính. Tại đây bạn có thể xem file, bung nội dung vào một folder mặc định hoặc folder do bạn sắp đặt, hay bổ sung các file cho archive. Giống PKZip, WinPack32 có thể mở vài ba archive một lúc, nhưng có thêm khả năng kéo và thả file giữa các archive (xem Hình 6). Nó phát hiện được một file zip ngay cả khi file đó không có đuôi zip. Khi tạo một archive, WinPack32 so sánh các file đã được nén trong archive này với file gốc để bảo đảm tính toàn vẹn. Tuy nhiên, chương trình này không bổ sung thêm lệnh cho menu nhấn-phím-phải của Explorer.
123 Zip! có các tính năng đúng như đã quảng cáo nhưng còn thiếu nhiều tiêu chuẩn của một chương trình zip tốt: không có tùy chọn menu ngữ cảnh, và được điều khiển hoàn toàn thông qua hộp thoại; không có khả năng kéo và thả. Giá được cho miễn phí, chẳng tội gì mà không lấy một bản "dùng chơi". Nhưng với giá 29,95 USD, 123 Zip! không đáng để bạn cân nhắc.
Nếu muốn làm việc với các file zip theo cách cũ thì WinZip hay PKZip là thích hợp. Cả hai đều ổn định và có đủ chức năng cần thiết cho bạn. Nhưng rõ ràng là WinZip được cập nhật và nâng cấp nhiều hơn. Việc có chức năng kéo và thả, lệnh Extract trên menu ngữ cảnh, và khả năng tạo ra các archive tự bung đã giúp WinZip trở thành gói phần mềm hoàn chỉnh hơn. Nếu thích mở vài ba archive cùng lúc, nên xem xét để chọn WinPack32.
Khả năng tự bung
Bạn định phân phối file zip cho bạn bè hoặc đồng nghiệp và nghĩ rằng mọi người đều có chương trình unzip để bung file nén đó. Nhưng điều gì xảy ra nếu người nhận không có chương trình này? Bạn có thể tránh vấn đề tiềm tàng này bằng cách phân phối archive dưới dạng file tự bung (self-extracting). Ví dụ, thay vì nhận file có tên MYSTORY.ZIP, những người nhận sẽ có file MYSTORY.EXE. Họ thực thi file này như một chương trình thông thường, và file đó sẽ tự động bung phần nội dung của mình. Một số chương trình zip mạnh có khả năng tạo các file tự bung nhưng bạn có thể thực hiện công việc đó bằng WinZip Self-Extractor 2.1. Self-Extractor của WinZip dùng một wizard để từng bước đưa bạn đi qua toàn bộ quá trình. Tất cả tùy chọn có thể cần đến đều sẵn sàng; ví dụ, tạo các file 16 hay 32 bit, xác định folder nào để bung file vào, mở file README... WinZip Self-Extractor dễ dùng và "được việc", nhưng hơi đắt (49 USD). Nếu thích WinZip, tốt nhất bạn đừng dùng phần tự bung đi kèm. ZipMagic cũng có khả năng tạo file tự bung mà giá lại rẻ hơn nhiều.
Thực hiện các chia cắt
Lưu các file nén lên đĩa mềm là phương pháp phổ biến để lưu trữ các file cũ. Nhưng bạn sẽ gặp trục trặc nếu các archive đó lớn hơn 1.44MB. Dĩ nhiên, có thể lưu file vào trong một vài archive nhỏ, nhưng có giải pháp đơn giản hơn là sử dụng một phần mềm cắt file (splitter). Hiện có nhiều loại nhưng về nguyên tắc là giống nhau: cắt file thành nhiều phần nhỏ. Split File Extansion là một phần mềm như vậy. Nó bổ sung một menu nhấn-phím-phải gọi là Split This File; chọn menu này để mở hộp thoại. Bạn chỉ cần đặt tên cho thư mục đích và ấn định kích thước của các file cắt nhỏ rồi nhấn chuột lên nút Start. Kết quả là một loạt file được đánh số thứ tự. Khi cần dùng lại các file này, bạn đưa chúng vào một folder trên đĩa cứng, chọn tất cả các file, nhấn tùy chọn Concatenate trong menu nhấn-phím-phải, Split File Extension sẽ phục hồi lại file zip nguyên thủy. Một tính năng khác của Split File Extension được nhiều người ưa thích là tái kết hợp các file từ DOS bằng lệnh COPY. Tính năng này cho phép tái hợp các file trên máy tính không cài đặt Split File Extension.
Kết luận
Nói tóm lại sản phẩm thì nhiều nhưng những lúc khẩn cấp, chỉ có hai "ông bạn già" PKZip và PKUnzip for DOS là giúp đỡ được nhiều nhất. Đây là các chương trình lý tưởng cho việc sao lưu hoặc vận chuyển file trên đĩa mềm. Khỏi cài đặt cũng chẳng cần file hỗ trợ, chúng chỉ cần cả thảy có 84K mà có thể chạy trên mọi phiên bản MS-DOS (trừ MS-DOS 1.0). Thêm 31K nữa, bạn có thể bổ sung ZIP2EXE, một chương trình tạo file zip tự bung.
Bùi Xuân Toại
Windows 9/1999
Thông tin sản phẩm
123 Zip! v2.0
CleverZip
Split File Shell Extension v2.1
PKZip 2.63
PKZip 2.5 for DOS
Winpack32
WinZip
WinZip Self-Extractor 2.1
ZipMagic
PcLeHoan
1996 - 2002
Mirror :
http://www.pclehoan.com
Mirror :
http://www.lehoanpc.net
Mirror :
http://www.ktlehoan.com