Double Commander có thể xử lý các tập tin nén giống như bạn làm với các thư mục đơn giản.
Ví dụ, nếu chúng ta có một tập tin ZIP trong bảng điều khiển, chúng ta chỉ có thể chọn nó, nhấnEnterCác phím, bảng điều khiển sẽ hiển thị nội dung của ZIP, giống như chúng ta chuyển sang một thư mục.
Double Commander rất linh hoạt và có thể làm việc với các tệp nén bằng cách sử dụng các chương trình bên ngoài thông qua giao diện riêng của nó. Nó sử dụng hai nguyên tắc khác nhau để làm việc với các tập tin nén:
Khi chúng tôi cố gắng mở một kho lưu trữ, Double Commander bắt đầu bằng cách kiểm tra danh sách các plugin đóng gói có sẵn.
Một khi bên trong tệp nén, chúng tôi có thể thực hiện một số chức năng cơ bản như xem tệp, sao chép nó sang bảng điều khiển khác và một số chức năng hạn chế.
Hình ảnh dưới đây cho thấy một ví dụ, chúng tôi đã chọn tập tin nén "help.rar" và nhấnEnterKey, như thể nó là một thư mục:

Gọi điện thoại để kiểm tra (F3) hoặc edit (F4) Sau khi lệnh, Double Commander sẽ trích xuất tập tin dưới con trỏ vào thư mục hệ thống của tập tin tạm thời và mở nó. Sau khi bạn đóng trình xem, các tệp tạm thời sẽ bị xóa. Nếu một tập tin mở trong trình soạn thảo bị thay đổi, Double Commander sẽ cung cấp gói lại (nếu định dạng tập tin nén và plugin đóng gói hoặc công cụ lưu trữ bên ngoài hỗ trợ tính năng này).
Sử dụng Double Click hoặc PressEnterKhi khóa, Double Commander sẽ hiển thị cửa sổ thuộc tính của tệp được đóng gói:

Dòng đóng góihiển thị tên của plugin đóng gói được sử dụng hoặc tên của công cụ lưu trữ bên ngoài.
Nút:
Việc đóng – sẽ đóng cửa sổ Properties.
Giải nén và thực hiện – Double Commander trích xuất các tập tin dưới con trỏ vào thư mục hệ thống của các tập tin tạm thời và gọi các hoạt động mặc định trong các hiệp hội tập tin nội bộ hoặc hệ thống.
Giải nén tất cả và thực hiện – tương tự như trước, nhưng trước tiên toàn bộ nội dung của kho lưu trữ được trích xuất.
Double Commander cho phép các tập tin cấu hình được tự động mở trong chương trình liên kết, sử dụng<AutoExtractOpenMask>.
Khi đóng lại, Double Commander sẽ xóa tất cả các tập tin tạm thời.
Chúng ta có thể cấu hình Double Commander để xử lý lưu trữ nén bằng cách sử dụng tệp "plugin đóng gói" bên ngoài.
Kể từ khi cài đặt, Double Commander đã bao gồmmột số tệp plugin.WCX này.
Ngoài ra, có một số plugin khác có sẵn trực tuyến. Chúng tôi có thể tìm kiếm các plugin.WCX.
Cũng nên nhớ rằng các plugin được thực hiện cho Total Commander về cơ bản cũng có sẵn trong Double Commander.
Để cài đặt, kích hoạt hoặc cấu hình chúng, chúng ta cần truy cập các tùy chọn cấu hình... nbsp; plugin cho WCX:

Lưu ý rằng một số định dạng chỉ đọc, có nghĩa là nội dung chỉ có thể được xem, trích xuất và thử nghiệm.
Đôi khi một plugin cho loại tệp lưu trữ mà chúng tôi muốn sử dụng không tồn tại.
Hoặc vì bất kỳ lý do gì, đôi khi chúng ta có thể rõ ràng muốn sử dụng một trình đóng gói bên ngoài để tận dụng các tính năng và chức năng không có trong plugin.
Double Commander xử lý các công cụ lưu trữ bên ngoài bằng cách sử dụng một cái gì đó tương tự như cách thức hoạt động của pluginMultiArccủa Total Commander.
Nói tóm lại,sử dụng một công cụ lưu trữ bên ngoài có thể được tóm tắt như sau: Đây là một cách để khởi chạy công cụ lưu trữ quen thuộc của chúng tôi, nhưng được điều khiển bởi Double Commander, làm cho nó giống như được tích hợp vào một ứng dụng bằng cách cung cấp các tham số khác nhau cho khả năng thực thi của công cụ lưu trữ.
Phần còn lại của trang này sẽ thảo luận về vấn đề này: làm thế nào để cấu hình Double Commander để khởi động các công cụ lưu trữ bên ngoài để thực hiện những gì chúng ta cần.
Giả sử chúng ta muốn sử dụng "rar.exe" để làm việc với kho lưu trữ.rar.
Như chúng tôi đoán, điều cơ bản là chúng ta cần phải cấu hình cách gọi các công cụ lưu trữ bên ngoài để có thể...
Điều này sẽ được thực hiện bằng cách cấu hình công cụ lưu trữ tùy chọn, như được hiển thị trong hình dưới đây:

Tất cả các thiết lập được lưu trữ trong filemultiarc.ini.
Trong các phần tiếp theo, chúng ta sẽ xem xét các khả năng khác nhau mà Double Commander cung cấp cho chúng ta để tích hợp đúng cách việc sử dụng các baler bên ngoài.
Chúng tôi sẽ không mô tả từng lĩnh vực ở đây vì nó khá trực quan khi chúng tôi bắt đầu, nhưng chúng tôi sẽ dành thời gian để mô tả một ví dụ tích hợp chi tiết.
Chúng tôi sẽ mô tả việc tích hợp các công cụ lưu trữ bên ngoài "rar.exe". Không có gì giống như một ví dụ từng bước hoàn chỉnh.
Chúng tôi nhấp vào nút Thêm ở dưới cùng để đặt tên có ý nghĩa cho công cụ lưu trữ và chúng tôi đã sẵn sàng để định cấu hình nó.

Sau đó, chúng ta cần chỉ định một mô tả có ý nghĩa cho công cụ lưu trữ, vị trí chính xác nơi công cụ lưu trữ có thể thực thi và sau đó sẽ có phần mở rộng tệp được liên kết với công cụ lưu trữ đó (không có dấu chấm).
Nếu chúng ta có nhiều phần mở rộng, chỉ cần tách chúng bằng một dấu phẩy duy nhất, không có dấu cách.

Lưu ý: Double Commander hỗ trợ phần mở rộng gấp đôi (ví dụ:"tar.gz","tar.xz", v.v.) và chúng phải được đặt ở đầu danh sách phần mở rộng (tức là "tar.gz" trước "gz").
Như đã đề cập trước đó, chúng ta cần cấu hình cách chúng ta có thể gọi các tệp thực thi công cụ lưu trữ bên ngoài để thực hiện những gì chúng ta muốn.
Để giúp chúng ta làm điều này, Double Commander cung cấp cho chúng ta một số biến chuyên dụng để điền vào các chuỗi cấu hình cho các hoạt động khác nhau mà chúng ta có thể định cấu hình.
Bảng sau đây cho thấy các biến bạn có thể sử dụng và những gì chúng sẽ được thay thế:
| Định nghĩa lệnh | |
|---|---|
| Nghĩa của từ | : variable expression |
| Tên dài của công cụ lưu trữ | %P | (như trong phím "Archiver")
| Tên ngắn của công cụ lưu trữ | %p | (như được hiển thị trong phím "Archiver")
%A | Tên dài tập tin lưu trữ |
%a | Tên tập tin lưu trữ ngắn |
%L | Tên danh sách các tập tin. Danh sách tập tin là một tập tin có chứa tên của tập tin mà bạn muốn được xử lý bởi công cụ lưu trữ bên ngoài. Tên file dài quá. |
%l | Danh sách các tập tin có tên tập tin ngắn |
%F | Tên của tập tin riêng lẻ cần làm việc. Công cụ lưu trữ sẽ được thực thi nhiều lần cho đến khi tất cả các tên tệp được xử lý. Biến này chỉ nên được sử dụng nếu công cụ lưu trữ đích không hỗ trợ danh sách các tệp trên dòng lệnh. |
%V | Kích thước cuộn (để lưu trữ nhiều cuộn) |
%W | Mật khẩu |
%E< errorlevel> | Mức lỗi lệnh tối đa được chấp nhận. Ví dụ như, %E2Có nghĩa là các mức lỗi 0, 1 và 2 đều được chấp nhận. Biến này có thể được chỉ định ở bất cứ đâu trong một lệnh. Nếu không tồn tại, chỉ có mức lỗi 0 được coi là thành công. |
%O< modifier> | Theo mặc định, Double Commander chuyển đổi đầu ra của công cụ lưu trữ từ mã hóa OEM sang UTF-8. Sử dụng tùy chọn này để viết đè mã hóa. Xem các công cụ sửa đổi mã hóa có thể có bên dưới. Nó chỉ có thể được sử dụng với các hoạt động Danh sách. |
| thư mục con đích trong kho lưu trữ | %R |
{} | Nếu một số biến được bao gồm trong dấu ngoặc nhọn-nó sẽ chỉ được thêm vào nếu biến có chứa nội dung không rỗng |
%S | Biến xác định vị trí của các tham số dòng lệnh bổ sung có thể được thêm vào tronghộp thoại đóng gói tập tin |
Đừng lo lắng, chúng tôi sẽ đưa ra ví dụ sau để hiểu rõ hơn.
Các modifier này có thể được chỉ định ngay sau khi biến, không có khoảng trắng.
| các bộ sửa đổi biến | |
|---|---|
| Nghĩa của từ | : modifier letter |
F | Chỉ bao gồm các tập tin trong danh sách các tập tin (có thể được so sánh với%Lhòa%lCác biến số được sử dụng cùng nhau) |
Q | Đặt tên chứa dấu cách trong dấu ngoặc kép |
q | Đặt tất cả tên trong dấu ngoặc kép |
W | chỉ sử dụng tên, không bao gồm đường dẫn |
P | chỉ sử dụng đường dẫn và không có tên |
A | Sử dụng mã hóa hệ thống ANSI trong Windows hoặc mã hóa hệ thống mặc định trong các hệ thống giống Unix (thường là UTF-8 trong các bản phân phối GNU/Linux); có thể được sử dụng với%Lhòa%OSử dụng variables với nhau |
U | được mã hóa bằng UTF-8; có thể được mã hóa với%Lhòa%OSử dụng variables với nhau |
Một lần nữa, không phải lo lắng, chúng tôi sẽ đưa ra ví dụ sau.
Nếu chúng ta muốn Double Commander xử lý các tệp lưu trữ nén giống như chúng ta làm với các thư mục, chúng ta cần có khả năng lấy danh sách các tệp có trong kho lưu trữ.
Tại thời điểm này, chúng tôi không cần phải giải nén! Không, đây chỉ là danh sách những gì có trong đó để Double Commander hiển thị nội dung cho chúng ta.
Trong ví dụ "rar.exe" của chúng tôi, nếu chúng ta nhìn vào tài liệu của nó, có một lệnh "v" cho phép chúng tôi để có được ứng dụng giao diện điều khiển "rar.exe" để xuất ra một danh sách các tập tin trong kho lưu trữ:

Vì vậy, theo cách sử dụng của ứng dụng, để có được danh sách các nội dung chứa trong kho lưu trữ, chúng ta cần gọi "rar.exe" bằng cách sử dụng lệnh "v", theo sau là tên kho lưu trữ.
Trước tiên, hãy kiểm tra thủ công, cố gắng hiển thị nội dung của tệp "E: \Temp\just.rar"

Vì vậy, những gì chúng ta cần làm bây giờ là cấu hình "danh sách" để nói với Double Commander cách gọi "rar.exe" để có được nội dung của kho lưu trữ nén.
Để làm được điều này, chúng ta sẽ viết lại những gì chúng ta vừa làm, nhưng sử dụng các biến và công cụ sửa đổi biến đã đề cập trước đó.
Đây là những gì nó trông giống như:
![]()
Chúng ta đã viết%P v %AQ, sử dụng các biến và công cụ sửa đổi biến được đề cập trước đó.
Vì vậy, đó là tất cả về việc gọi các công cụ lưu trữ bên ngoài với các tham số thích hợp.
Tính năng này được sử dụng khi chúng ta sử dụng lệnh nội bộcm_OpenArchive.
Một số lưu ý về tùy chọn Sử dụng tên kho lưu trữ không có phần mở rộng làm danh sách: Tùy chọn này hoạt động với các kho lưu trữ chỉ có thể chứa một tệp và tên tệp bằng tên kho lưu trữ không có phần mở rộng (Bzip2, XZ, v.v.). Các tập tin nén như vậy thường không chứa tên của tập tin gốc.
Những gì chúng tôi đã làm cho đến nay sẽ làm cho các công cụ lưu trữ để xuất ra một danh sách các tập tin trong kho lưu trữ.
Nhưng đó không phải là tất cả! Chúng tôi cần khôi phục dữ liệu đầu ra này và hiển thị nó trong bảng điều khiển.
Vì vậy, chúng ta cần Double Commander để giải thích bảng đầu ra này mà lệnh công cụ lưu trữ sẽ xuất ra.
Như chúng ta đã thấy trong các ảnh chụp màn hình trước đó, đầu ra của "rar.exe" không chỉ là dữ liệu thô.
Có một số thông tin gây phiền nhiễu cần loại bỏ và chỉ giữ danh sách tệp thực tế.
May mắn thay, chúng ta có thể cấu hình một chuỗi ma thuật để Double Commander chờ để xem chuỗi trước khi bắt đầu phân tích dòng tiếp theo.
Ngoài ra, chúng ta có thể định cấu hình chuỗi ma thuật dừng phân tích cú pháp.
Với các đường chấm chấm trước và sau, thật dễ dàng để thiết lập hai tham số này bằng các đường chấm chấm:

Nếu kho lưu trữ bên ngoài ngay lập tức xuất dữ liệu thô mà không có hàng bổ sung, chỉ cần để trống hai trường.
Biểu tượng chèn ("^") chỉ ra sự khởi đầu của một chuỗi ma thuật phải hoàn toàn tốt, không có gì trước nó. Nếu không, văn bản có thể được đặt bất cứ nơi nào trên dòng.
Nếu không thể chắc chắn rằng nó bắt đầu với một dòng, chẳng hạn như nếu công cụ lưu trữ bên ngoài hiển thị ngày và thời gian ở đầu dòng và sau đó là chuỗi không đổi, chúng tôi sẽ đặt chuỗi ma thuật thành chuỗi không đổi, nhưng chúng tôi sẽ không thêm ký hiệu chèn, điều này cho thấy Double Commander rằng chuỗi có thể được tìm kiếm ở bất cứ đâu.
Nếu chuỗi kết thúc danh sách có thể bị nhầm lẫn với tên tệp, bạn có thể ngừng xử lý nội dung lưu trữ quá sớm.
Đó là lý do tại sao, nếu có thể, tốt nhất là chỉ định rằng chuỗi phải bắt đầu bằng một dòng.
Ngoài ra, nếu có một cách để thiết lập chuỗi kết thúc danh sách càng dài càng tốt trong khi vẫn duy trì hằng số, tốt hơn và an toàn hơn để đảm bảo không có sự nhầm lẫn nào xảy ra trong tương lai.
Bây giờ Double Commander biết dữ liệu nào cần phân tích để lấy danh sách các tập tin lưu trữ.
Sẽ rất dễ dàng để viết một chương trình phân tích cú pháp đầu ra "RAR" để lấy danh sách các tệp.
Tuy nhiên, Double Commander không làm vậy.
Thay vào đó, nó cung cấp sự linh hoạt tuyệt vời bằng cách cho chúng ta cách cấu hình các bảng phân tích cú pháp của riêng mình!
Điều này có thể phức tạp hơn một chút so với việc không làm gì cả, nhưng mặt khác, nó mang lại cho chúng tôi sự linh hoạt tối đa và cho phép chúng tôi sử dụng các kho lưu trữ bên ngoài mà các nhà phát triển Double Commander thậm chí không biết!
Để giúp chúng tôi phân tích các bảng đầu ra được tạo ra bởi công cụ lưu trữ, chúng tôi sẽ có nhiều biểu thức khác nhau được biểu thị bằng chữ cái.
Bảng sau đây cung cấp "cú pháp chuẩn" để phân tích cú pháp danh sách nội dung được tạo ra bởi kho lưu trữ bên ngoài.
Như chúng ta sẽ thấy từ ví dụ tiếp theo,"cú pháp chuẩn" về cơ bản dựa trên sự thay thế trực tiếp hơn so với "cú pháp nâng cao".
Nếu có thể, chúng tôi sẽ cố gắng sử dụng cú pháp đó vì nó phân tích cú pháp nhanh hơn so với "cú pháp nâng cao" tiếp theo.
| Giải pháp cú pháp chuẩn | |
|---|---|
| Từ đồng nghĩa | với expression |
n | tên tập tin |
z | Kích thước chưa nén |
c | Mô tả tập tin |
p | Kích thước nén |
d | ngày |
| tháng | t |
TTT | Tên tháng 3 chữ cái (Jan, Feb, Mar,...) |
| năm | y |
h | h h |
H | giờ modifier chữ cái (a giờ sáng, p giờ chiều) |
M | phút |
giây | s |
a | Tài sản |
e | Phần mở rộng tập tin |
? | Bỏ qua một biểu tượng |
* | Bỏ qua cho đến khi khoảng trắng đầu tiên hoặc kết thúc dòng |
+ | Đối với trường tên ở cuối dòng: sử dụng tất cả các ký tự cho đến cuối dòng |
Nếu công cụ lưu trữ sử dụng nhiều dòng để hiển thị thông tin cho mỗi tệp, chúng ta phải chỉ định số dòng tương ứng để phân tích nội dung (Double Commander hỗ trợ tối đa 50 dòng).
Chìa khóa ở đây là sử dụng các biểu thức trong bảng trên để viết chuỗi "định dạng danh sách" sẽ định cấu hình Double Commander để xử lý các kho lưu trữ bên ngoài, cho phép lấy nội dung của kho lưu trữ, bao gồm thư mục và tên tệp, kích thước tệp, thuộc tính, ngày tệp và hơn thế nữa.
Cách chúng ta đoán đầu tiên là viết một dòng văn bản trong một chương trình như Notepad đại diện cho một tệp mà chúng ta đã tạo thủ công trước đó và sau đó viết một biểu thức phù hợp bên dưới.
Dưới đây là một ví dụ:

Như chúng ta có thể thấy, chúng tôi đã viết các chữ cái biểu thức phân tích cú pháp khớp chính xác với nơi nội dung đầu ra của kho lưu trữ bên ngoài nằm trong kho lưu trữ:
Chúng ta cũng cần loại trừ 4 không gian ở đầu dòng và sử dụng "???? "Thay thế.
Sau khi cấu hình như vậy, nếu chúng ta chọn kho lưu trữ trước đó "just.rar" trong bảng điều khiển, nhấnEnterChìa khóa đi vào nó, như thể nó là một thư mục, và chúng ta sẽ thấy nội dung của tập tin cho thấy rằng thực hành của chúng tôi về cơ bản là hợp lệ (nếu chúng ta bỏ qua tập tin cuối cùng...):

Bảng sau đây cung cấp "cú pháp nâng cao" để phân tích cú pháp danh sách nội dung được tạo ra bởi lưu trữ bên ngoài.
Các yếu tố của cú pháp này mất nhiều thời gian hơn để xử lý so với các yếu tố trong bảng trên.
Vì vậy, chỉ sử dụng chúng khi bạn không thể giải quyết các tình huống có vấn đề theo cách trước đó.
Phần tiếp theo sẽ đưa ra một ví dụ về cách sử dụng.
| Giải quyết ngữ pháp nâng cao | |
|---|---|
| Từ đồng nghĩa | với expressions |
+ | Đối với trường tên của đuôi không thẳng: sử dụng tất cả các ký tự cho đến khoảng trắng tiếp theo |
+ | Sau bất kỳ trường số nào: Sử dụng tất cả các số cho đến ký tự không phải số đầu tiên |
n+ | Sử dụng tất cả các ký tự cho đến cuối dòng làm tên tệp |
z+ | Sử dụng tất cả các số cho đến ký tự không phải số đầu tiên dưới dạng kích thước không nén |
p+ | Sử dụng tất cả các số cho đến ký tự không phải số đầu tiên làm kích thước nén |
$ | Bỏ qua tất cả các dấu cách/tab cho đến khi ký tự tiếp theo hoặc kết thúc dòng |
\ | Dữ liệu được chuyển sang hàng tiếp theo (hỗ trợ tối đa 2 hàng) |
x | Chính xác 1 khoảng trắng; nếu có các ký tự khác nhau ở vị trí này, toàn bộ hàng sẽ bị bỏ qua |
z=1024 | Kích thước không nén nhân với giá trị đã cho (đây là: 1024) |
p=1024 | Kích thước nén nhân với giá trị đã cho (ở đây: 1024) |
Ví dụ về "ngữ pháp chuẩn" là một dự đoán tốt, nhưng nó không hoàn hảo.
Có những trường hợp nó không hoạt động chính xác.
Đối với các tệp lớn, kích thước tệp rộng hơn dự kiến, vì vậy lần thử đầu tiên của chúng tôi với danh sách sẽ thất bại.
Xem hồ sơ của chúng tôi.007 Skyfall.TS。
Chúng ta có thể thấy rằng nó không hiển thị thông tin thích hợp. Chúng ta hãy so sánh:

Vì vậy, chúng tôi thấy rằng thông tin như tên tập tin, kích thước tập tin, ngày tháng, vv là không chính xác.
Hãy sử dụng các yếu tố của Advanced Grammar để giải quyết tình huống có vấn đề này.
Đây là cách để làm cho nó hoạt động, ngay cả khi trường đầu ra không phải lúc nào cũng * chính xác * cùng chiều rộng:
![]()
Nó phức tạp hơn một chút, nhưng dễ mô tả, và cuối cùng chúng ta sẽ thấy rằng việc tạo ra nó không quá phức tạp.
Dưới đây là mô tả đầy màu sắc để giúp chúng ta hình dung phân tích cú pháp của từng khối nhỏ:

Vì vậy, với chuỗi "định dạng danh sách" này, bây giờ chúng ta có thể kiểm tra lại để có được kết quả chính xác, ngay cả đối với các tệp lớn:

Sử dụngcác biến vàcông cụ sửa đổi biếnđã đề cập trước đó, đây là cách cấu hình cách công cụ lưu trữ bên ngoài được gọi để "trích xuất" các tệp hoặc tất cả các tệp trong kho lưu trữ được chọn.
Tiếp tục với ví dụ "rar.exe" của chúng tôi, từ tài liệu của nó, chúng tôi biết rằng việc sử dụng lệnh "e" có nghĩa là chúng tôi muốn trích xuất tệp hoặc một nhóm tệp.
Với "rar.exe", chúng tôi cũng có thể cung cấp một danh sách các tập tin để giải nén trong các thông số.
Vì vậy, chúng tôi sẽ sử dụng những gì Double Commander cung cấp cho chúng tôi%LMột biến sẽ tạo ra một tập tin văn bản có chứa mỗi tập tin được chọn từ bảng điều khiển hoạt động để trích xuất và vượt qua tập tin danh sách duy nhất này như là một tham số.
Dưới đây là dòng mà chúng tôi định cấu hình để giải nén với "rar.exe":
![]()
Ví dụ này được mô tả là:
Lệnh này được gọi khi chúng ta chọn kho lưu trữ để giải nén toàn bộ nội dung, các tệp riêng lẻ, v.v.
Chúng tôi có thể không nhận ra điều đó, nhưng khi chúng tôi "nhập" kho lưu trữ giống như một thư mục, chúng tôi nhấnF3Thao tác "giải nén" này sẽ diễn ra ở chế độ nền khi bạn xem nội dung của các tệp trong kho lưu trữ. Các tập tin được chọn sẽ được trích xuất vào thư mục hệ thống của các tập tin tạm thời bằng cách sử dụng chế độ này, và sau đó chúng tôi sẽ sử dụngF3Người xem được gọi xem tập tin tạm thời đó.
Tính năng này sẽ được sử dụng khi chúng ta sử dụng lệnh nội bộcm_ExtractFiles.
Sử dụngcác biến vàcông cụ sửa đổi biếnđược đề cập trước đó, đây là cấu hình cách công cụ lưu trữ bên ngoài được gọi để "đóng gói" tệp hoặc thêm tất cả các tệp vào hàng lưu trữ đã chọn.
Tiếp tục với ví dụ "rar.exe" của chúng tôi, từ tài liệu của nó, chúng tôi biết rằng việc sử dụng lệnh "a" có nghĩa là chúng tôi muốn tạo kho lưu trữ hoặc thêm tệp hoặc tập hợp tệp vào kho lưu trữ hiện có.
Với "rar.exe", chúng tôi cũng có thể cung cấp một danh sách các tập tin để thêm vào các đối số.
Vì vậy, chúng tôi sẽ sử dụng những gì Double Commander cung cấp cho chúng tôi%LMột biến mà sẽ tạo ra một tập tin văn bản có chứa mỗi tập tin được chọn từ bảng điều khiển hoạt động để thêm vào kho lưu trữ và vượt qua tập tin danh sách duy nhất này như là một tham số.
Dưới đây là các dòng mà chúng tôi đã tạo hoặc thêm vào kho lưu trữ cấu hình với "rar.exe":
![]()
Ví dụ này được mô tả là:
Lệnh này được gọi khi chúng tôi chọn một hoặc một tập hợp các tập tin và yêu cầu đóng gói chúng bằng cách sử dụng công cụ lưu trữ bên ngoài "RAR".
Tính năng này sẽ được sử dụng khi chúng ta sử dụng lệnh nội bộcm_PackFiles.
Một số loại định dạng tệp nén hỗ trợ khả năng xóa trực tiếp các tệp bên trong tệp nén.
Nếu tính năng này được hỗ trợ, chúng ta có thể cấu hình Double Commander để hướng dẫn cách gọi công cụ lưu trữ bên ngoài để thực hiện việc này.
Trường hợp điển hình của việc sử dụng lệnh này là khi chúng ta đi vào kho lưu trữ, chọn một tập tin trong đó và nhấn xóa nó.
Nếu Delete Action được cấu hình, nó sẽ được sử dụng cho hành động đó.
Lưu ý rằng hành động này nằm trên tab thứ hai của cấu hình lưu trữ bên ngoài.
Tiếp tục với ví dụ "rar.exe" của chúng tôi, đây là cách bạn có thể định cấu hình thao tác này:
![]()
Ví dụ này được mô tả là:
Một số công cụ lưu trữ cho phép xác minh tính toàn vẹn của tài liệu lưu trữ để đảm bảo không có lỗi trong đó, đảm bảo không có thiệt hại.
Nếu tính năng này được hỗ trợ, chúng ta có thể cấu hình Double Commander để hướng dẫn cách gọi công cụ lưu trữ bên ngoài để thực hiện việc này.
Tiếp tục với ví dụ "rar.exe" của chúng tôi, đây là cách bạn có thể định cấu hình thao tác này:
![]()
Ví dụ này được mô tả:
Chức năng này được sử dụng khi chúng ta sử dụng lệnh nội bộcm_TestArchive.
Nếu không có lỗi, cửa sổ kiểm tra sẽ đóng. Trong trường hợp có lỗi, một thông báo sẽ xuất hiện như sau:

Theo mặc định, khi chúng ta gọi lệnh nội bộcm_ExtractFiles để giải nén một kho lưu trữ, công cụ lưu trữ sẽ tạo lại cấu trúc tương tự khi giải nén tệp nếu các tệp bên trong được sắp xếp theo cấu trúc thư mục cụ thể.
Tuy nhiên, khi các công cụ lưu trữ hỗ trợ nó, đôi khi nó là thích hợp để trích xuất tất cả các tập tin vào cùng một vị trí mà không cần tái tạo cấu trúc thư mục.
Đây là nơi nó được sử dụng khi cấu hình các hoạt động Extract No Path.
Ví dụ, với "rar.exe", lệnh để làm điều này sẽ được viết như sau:
![]()
Ví dụ này được mô tả:
Hiệu ứng này sẽ hiển thị trong người yêu cầu khi chúng tôi yêu cầu giải nén kho lưu trữ:

Một số công cụ lưu trữ có thể tạo ra các tập tin nén "tự giải nén".
Điều này có nghĩa là vào cuối quá trình xử lý, chúng tôi sẽ nhận được một tệp thực thi sẽ được giải nén nội dung chứa trong đó khi nó được thực thi.
Điều này rất hữu ích khi chúng tôi muốn đảm bảo rằng những người cần nén nội dung của tệp sẽ không gặp sự cố khi giải nén: không cần cài đặt bất cứ thứ gì, chỉ cần thực thi tệp và chúng tôi sẽ nhận được tệp không nén!
Thông thường, hành động này được cấu hình theo cách tương tự như Add Action, nơi chúng ta chỉ cần thêm một tham số để chỉ ra rằng chúng ta muốn kết quả cuối cùng là tự giải nén.
Đó là trường hợp với ví dụ "rar.exe" của chúng tôi.Đây là cách bạn có thể cấu hình hành động này:
![]()
Ví dụ này được mô tả:
Để tạo tệp tự giải nén, lưu ý rằng quy trình giống như khi bạn thường tạo tệp nén, giống như với lệnh nội bộcm_PackFiles, nhưng trong số những người yêu cầu xuất hiện, chúng tôi sẽ kiểm tra tùy chọn Tạo kho lưu trữ tự giải nén.

Chúng ta có thể cấu hình Double Commander để bỏ qua phần mở rộng của tệp, trong khi cố gắng phát hiện tệp lưu trữ nén thông qua nội dung bên trong của nó và sau đó gọi lệnh gói hòa giải danh sách thích hợp được mô tả ở trên.
Đây là nơi chúng tôi sẽ sử dụng lệnh nội bộcm_OpenArchive.
Ví dụ về tính năng này là khi chúng ta muốn xem nội dung thực tế của tệp.exe tự giải nén mà không cần phải khởi chạy nó.
Một ví dụ khác là xem một kho lưu trữ được lưu trữ với các phần mở rộng tệp khác nhau, chẳng hạn như tệp.docx của Microsoft Word, thực sự là một tệp ZIP nén.
Về cơ bản, chúng ta có thể cấu hình Double Commander để phát hiện các mẫu dữ liệu chiến lược ở các vị trí cụ thể trong các tệp được chọn để chúng ta có thể nhận ra kho lưu trữ được cấu hình.
Chúng tôi sẽ gọi các mẫu này là "ID" và phần này là về cấu hình chúng.
Chúng tôi có ba cài đặt: ID, vị trí ID và phạm vi tìm kiếm ID.
Chúng tôi sẽ chỉ ra nơi Double Commander tìm kiếm một mẫu ID cụ thể để xác định loại lưu trữ và sau đó sử dụng các lệnh cấu hình liên quan đến loại lưu trữ được xác định.
Hãy bắt đầu với một ví dụ đơn giản. Dưới đây là một ảnh chụp nhanh vào lúc bắt đầu của 7-Zip lưu trữ:

Bằng cách nhìn vào các tập tin 7-Zip khác, chúng ta thấy rằng sáu byte đầu tiên luôn luôn nối tiếp 0x37 0x7A 0xBC 0xAF 0x27 0x1C.
Vì vậy, chúng ta sẽ tận dụng điều này bằng cách cấu hình Double Commander, và khi nó thấy một tệp bắt đầu bằng chuỗi đó, giả sử tệp đó là kho lưu trữ 7-Zip.
Và đó là những gì chúng tôi làm với cấu hình sau:

Chúng ta phải viết ID dưới dạng một số thập lục phân 2 chữ số được phân tách bằng dấu cách.
Vị trí ID, tùy chọn, là vị trí của ID trong kho lưu trữ. Nếu nó không tồn tại, ID sẽ được tìm kiếm ngay từ đầu kho lưu trữ. Chúng ta có thể xác định vị trí bằng ký hiệu "-": trong trường hợp này, vị trí sẽ được tính toán từ cuối tệp. Giá trị đặc biệt SeekID xác định ID tìm kiếm nếu nó không được tìm thấy bằng giá trị số ở vị trí ID. Trong phạm vi "0... Kích thước tập tin "hoặc"0 .. Tìm kiếm ID trong phạm vi ". Các giá trị có thể được viết dưới dạng thập phân (12345) hoặc thập lục phân (0x3039).Đối với giá trị âm, ký hiệu 0xFFFFFFFF (-1) được sử dụng.
Phạm vi tìm kiếm ID (tùy chọn) là số byte mà ID tìm kiếm được xác định khi SeekID được xác định. 1 MB là mặc định.
Lưu ý:Tất cả các tham số trên có thể xác định nhiều hơn một giá trị. Chúng ta có thể phân tách nhiều giá trị này bằng dấu phẩy.
Trong ví dụ lưu trữ 7-Zip của chúng tôi, vị trí ID và ID (0, vì ở đầu tệp) là đủ.
Vì vậy, khi chúng tôi gọi lệnh nội bộcm_OpenArchive, Double Commander sẽ quét nội dung tệp và nếu chế độ "0x37 0x7A 0xBC 0xAF 0x27 0x1C" được xác định tại độ lệch tệp 0, nó sẽ xử lý nó như một tệp loại 7Z mà chúng tôi đã định cấu hình và sau đó sử dụng các lệnh và tham số cấu hình liên quan đến loại lưu trữ được xác định cho danh sách, giải nén, v.v.
Trong hầu hết các trường hợp, không cần thiết phải kiểm tra tệp dưới dạng thập lục phân: chữ ký tệp có thể được tìm thấy trong đặc tả định dạng hoặc sử dụng danh sách, cơ sở dữ liệu hoặc tiện ích hiện có (ví dụ:trang Wikipedia này hoặccơ sở dữ liệu MIME FreeDesktop.org).
Các bước trên thường đủ để sử dụng các công cụ lưu trữ bên ngoài, nhưng chỉ trong trường hợp chúng ta có một vài tùy chọn:
Hiển thị đầu ra giao diện điều khiển – Nếu được bật, Double Commander sẽ (theo từng dòng) viết kết quả công việc của các công cụ lưu trữ bên ngoài và trình phân tích cú pháp vào cửa sổ nhật ký.
Chế độ gỡ lỗi – tương tự như tùy chọn trước đó, nhưng kết quả công việc cũng sẽ được xuất ra trong thông báo gỡ lỗi của Double Commander (xem mô tả--debug-log). Trong trường hợp này, một tập tin tạm thời chứa một danh sách các tập tin (trong ví dụ của chúng tôi%L) Nó sẽ không tự động bị xóa sau khi hoạt động hoàn tất.
Nếu việc hiển thị cửa sổ đăng nhập bị vô hiệu hóa trongcài đặt, nó sẽ bị buộc phải hiển thị và ẩn khi Double Commander đóng lại. Các thông điệp không được lưu vào các tập tin nhật ký.
Menu này có một số tính năng bổ sung:
Tự động cấu hình – Double Commander sẽ kiểm tra tất cả các tập tin thực thi của các công cụ lưu trữ: nếu tập tin được tìm thấy, chương trình sẽ tự động thêm đường dẫn đầy đủ của nó và kích hoạt các công cụ lưu trữ, nếu không các công cụ lưu trữ sẽ bị vô hiệu hóa.
Bỏ qua các thay đổi – Đặt lại tất cả các thay đổi cài đặt chưa được lưu.
Sort Archive Tool – sắp xếp danh sách các công cụ lưu trữ theo thứ tự bảng chữ cái.
Tắt tất cả và bật – tất cả Bật hoặc tắt tất cả các công cụ lưu trữ.
Xuất khẩu... Nhập khẩu... –Cho phép chúng tôi xuất và nhập cài đặt công cụ lưu trữ (tất cả các công cụ lưu trữ hoặc một phần của chúng).
Theo mặc định, các tệp có phần mở rộng được chỉ định trong cài đặt plugin và công cụ lưu trữ bên ngoài của WCX sẽ mở dưới dạng thư mục.Để mở chúng trong một ứng dụng được liên kết, chúng ta có thể sử dụng mục Mở trongmenu ngữ cảnhcủa tệp (nhưng trong trường hợp này chỉ liên kết tệp hệ thống) hoặc chúng ta có thể thêm hành động mong muốn vào menu Hành động.
muốn dùngEnterNhấn đúp hoặc nhấn phím, chúng ta phải thay đổi cài đặt.
Chúng ta có thể chỉ cần loại bỏ các phần mở rộng từ các thiết lập, nhưng trong trường hợp này lệnhcm_OpenArchive vàcm_ExtractFiles sẽ trở nên không có sẵn. Một cách khác:
Nếu bạn đang sử dụng plugin WCX, bạn có thể mở cài đặt plugin, chọn phần mở rộng và bật cờ Hiển thị dưới dạng tệp thông thường (ẩn biểu tượng đóng gói).
Nếu bạn sử dụng công cụ lưu trữ bên ngoài để giải nén tệp, bạn có thể điền vào các trường sử dụng ID mà không cần chỉ định phần mở rộng tệp.
Đối với các tệp như vậy, Double Commander sẽ sử dụng biểu tượng liên kết thay vì biểu tượng lưu trữ chung.