7zip: Làm cách nào để loại trừ tệp (không phải loại tệp) bằng tệp danh sách loại trừ?


11

Tôi biết bạn có thể tạo một tệp văn bản chứa danh sách các tệp và sau đó báo 7zip để tham chiếu tệp này để nó có thể loại trừ chúng khỏi kho lưu trữ, nhưng tôi không thể tìm thấy cú pháp cho điều đó. Ai đó có thể giúp gì không?

Câu trả lời:


9

Sau vài giờ tìm kiếm, cuối cùng tôi đã tìm ra nó. Đây là cú pháp chuyển đổi:

7z a -xr@exclude.txt backup.7z c:\whatever\*

Thông báo -xrthay vì -x. Biểu thị rđệ quy để nó có thể khớp các tệp bị loại trừ trong phân cấp thư mục sâu. Ngoài ra, định dạng của tệp văn bản có thể ít nhất là ANSI hoặc UTF-8.

Đối với tệp chứa các tệp, như OldWolf đã nói, đó là một danh sách được phân tách bằng trả về vận chuyển như thế này:

Telerik.Reporting.dll
Telerik.Reporting.Service.dll
Telerik.ReportViewer.WebForms.dll
Telerik.Web.Design.dll
Telerik.Web.UI.dll
*.txt

Hoạt động như một lá bùa.


1
Cảm ơn! Tôi đã cố gắng loại trừ với tùy chọn ký tự đại diện và hóa ra tôi đã thiếu rtùy chọn này. Đây là cách chính xác để loại trừ các tệp PNG theo cách đệ quy trong bash (dấu ngoặc đơn để ngăn bash mở rộng !*): -xr'!*.png' (chỉnh sửa: dấu ngoặc đơn thay vì thoát)
thomasa88

4

Tôi nghĩ bạn muốn chuyển đổi -x với @

7z a -t7z my.zip * -x@myexclusion.lst

Nhìn lại, tôi nhận ra bạn có thể có nghĩa là bạn muốn cú pháp cho listfile. Nó phải là một danh sách mới được phân tách. Bạn có thể đang gặp vấn đề về mã hóa. 7z hy vọng nó có định dạng UTF-8, bạn có thể ghi đè lên đó bằng công tắc -scs hoặc bạn có thể nói với notepad để lưu tệp ở định dạng UTF-8


2
Cảm ơn đã nhắc nhở về mã hóa tập tin. Tôi đã bối rối trong nhiều giờ về lý do tại sao danh sách loại trừ của tôi không được tuân theo. Tôi tạo tệp trong tập lệnh PowerShell bằng Out-File mặc định là Unicode. Thay đổi nó thành đầu ra UTF8 và đột nhiên mọi thứ chỉ hoạt động.
WileCau

0

Nếu danh sách của bạn sẽ thực sự ngắn, bạn có thể có nhiều hơn một cờ -x:

7z a -r CppSourceJBR.zip * .cpp .h -x! Stdafx. -x! targetver.h

BTW trong khi kiểm tra tôi phải tiếp tục xóa tệp .zip. Khi tôi quên điều đó, ví dụ targetver.h vẫn còn trong ZIP từ lần chạy trước.

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.