Bạn có các đối số hoán đổi. Thử đi:
-d
--delete
Xóa (xóa) các mục từ một kho lưu trữ zip. Ví dụ:
zip -d foo foo/tom/junk foo/harry/\* \*.o
sẽ xóa mục nhập foo/tom/junk
, tất cả các tệp bắt đầu bằng
foo/harry/
và tất cả các tệp kết thúc bằng .o
(trong bất kỳ đường dẫn nào). Lưu ý rằng việc mở rộng tên đường dẫn shell đã bị ức chế với dấu gạch chéo ngược, do đó zip có thể nhìn thấy dấu hoa thị, cho phép zip khớp với nội dung của kho lưu trữ zip thay vì nội dung của thư mục hiện tại. (Dấu gạch chéo ngược không được sử dụng trên các nền tảng dựa trên MSDOS.) Cũng có thể sử dụng dấu ngoặc kép để thoát dấu hoa thị như trong
zip -d foo foo/tom/junk "foo/harry/*" "*.o"
Không thoát khỏi các dấu sao trên một hệ thống mà trình bao mở rộng các ký tự đại diện có thể dẫn đến các dấu hoa thị được chuyển đổi thành một danh sách các tệp trong thư mục hiện tại và danh sách đó được sử dụng để xóa các mục từ kho lưu trữ.
Trong MSDOS, -d phân biệt chữ hoa chữ thường khi khớp với tên trong kho lưu trữ zip . Điều này yêu cầu tên tệp phải được nhập bằng chữ in hoa nếu chúng được nén bởi PKZIP trên hệ thống MSDOS. (Chúng tôi coi là làm cho trường hợp này không nhạy cảm trên hệ thống mà đường dẫn là trường hợp nhạy cảm, nhưng nó có thể lưu trữ đến từ một hệ thống mà trường hợp không thành vấn đề và các kho lưu trữ có thể bao gồm cả Bar
và bar
từng file riêng lẻ trong kho lưu trữ.) Nhưng thấy tùy chọn mới - ic để bỏ qua trường hợp trong kho lưu trữ.
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]