Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Cách Đơn Giản Hóa Nén 7z Với Bash Aliases

Cách Đơn Giản Hóa Nén 7z Với Bash Aliases

Có nhiều cách và nhiều công cụ bạn có thể dùng để nén file, hoặc để giảm không gian chúng chiếm hoặc gửi chúng như gói đến liên hệ. Trong số đó, 7-Zip đã lên ngôi vị trí hàng đầu cho hầu hết người dùng, nhờ kết hợp độc đáo giữa hiệu năng tuyệt vời và mức nén cao với chi phí bằng không.

Tất cả hình thức nén trong định dạng này phức tạp hơn cách chúng ta sẽ thấy ở đây. Ít nhất cho hầu hết người dùng dùng nén để đóng gói mọi thứ trong một thư mục và sub-folder thành các "bundle" nén.

Vậy hãy xem làm sao chúng ta có thể kết hợp hỗ trợ alias của Bash với phiên bản dòng lệnh của 7z để tạo gói file của chúng ta bằng một lệnh đơn giản.

Cài Đặt p7zip

Là công cụ nén phổ biến nhất, 7-Zip có khả năng đã cài sẵn trong bản phân phối Linux của bạn. Để test, thử lệnh "7z" trong terminal. Nếu chưa cài, bạn có thể cài trên bản phân phối Ubuntu/Debian-based với lệnh:

sudo apt-get install p7zip-full

Tạo File Bash Aliases

Alias của Bash cho phép mapping lệnh hoặc thậm chí chuỗi multi-command thành từ đơn. Cách dễ để thêm alias vào Bash là chèn chúng ở cuối file "~/.bashrc". Cho sự tiện lợi và tổ chức, được coi là tốt nhất để đặt chúng trong file riêng.

Có khả năng file này đã tồn tại, và cấu hình Bash bao gồm tham chiếu đến nó. Kiểm tra xem có không bằng cách mở "~/.bashrc" trong trình soạn thảo yêu thích, và tìm:

if [-f ~/.bash_aliases]; then . ~/.bash_aliases Fi

Nếu không, thêm nó ở cuối file sau mọi thứ đã có.

Cách Đơn Giản Hóa Nén 7z Với Bash Aliases

Giữ Thông Tin 7-Zip Gần Tay

Bạn có thể chạy 7-Zip trong terminal để xem tóm tắt tùy chọn dòng lệnh. Cho thông tin toàn diện hơn, truy cập hướng dẫn người dùng này hoặc man page của chương trình với:

man 7z

Những điều này sẽ giúp bạn thiết lập lệnh nén riêng. Có khả năng cao những cái chúng ta sẽ thấy ở đây sẽ đáp ứng nhu cầu của bạn. Vì vậy bạn có thể copy-paste chúng vào file .bash_aliases của bạn.

Cách Đơn Giản Hóa Nén 7z Với Bash Aliases

Tạo Alias Siêu Nén

Mở file "~/.bash_aliases" trong trình soạn thảo yêu thích – chúng tôi dùng nano. Nhập:

alias 75='7z a -r -t7z -m0=lzma2 -mx=9 -myx=9 -mqs=on -ms=on'

Cách Đơn Giản Hóa Nén 7z Với Bash Aliases

alias 75 nói chúng ta muốn tạo lệnh "75" mà chúng ta sẽ dùng từ nay để nén tất cả file và thư mục trong một thư mục thành bundle 7-Zip đóng gói. Lý do chúng ta dùng tên đặc biệt này cho lệnh là vì nó dễ nhớ như phiên bản ngắn của "7zip compression level 5".

7z là lệnh nén bản thân. a theo sau nghĩa là "chúng ta muốn thêm file vào package nén mới". -r chỉ ra rằng p7zip không nên "giới hạn ở thư mục nó chạy" mà nên bao gồm package nén cuối cùng và tất cả sub-folder trong nó, với toàn bộ nội dung.

-t7z -m0=lzma2 chỉ ra chúng ta muốn tạo package 7zip chủ yếu dùng thuật toán LZMA2 cho nén file. Thường cho nén tốt nhất cho hầu hết loại file.

-mx=9 -myx=9 tương ứng với mức nén và "lượng nỗ lực" 7-Zip sẽ bỏ vào phân tích nội dung file cần nén để tìm chiến lược nén tốt nhất. Giá trị càng cao, nén càng tốt và bundle nhỏ hơn.

Cuối cùng, -mqs=on -ms=on định nghĩa chúng ta muốn nén "solid". Nghĩa là p7zip sẽ nén file tương tự như chunk dữ liệu đơn, đạt kết quả tốt hơn. Lý do chúng tồn tại là tùy chọn bạn có thể tắt là chúng hữu ích nhưng cũng có hai điểm tiêu cực. Chúng kéo dài thời gian nén và làm cho không thể giải nén file độc lập từ bundle cuối cùng. Với nén solid, bạn không thể làm tương đương "trích xuất một file từ zip", và phải giải nén toàn bộ bundle để truy cập nội dung.

Nhân Bản Và "Cắt Giảm" Alias

Chúng ta bắt đầu với lệnh đạt nén tối đa để thay vì phải mở rộng nó với thêm yếu tố, chúng ta có thể lùi lại, bỏ tham số và giảm giá trị set.

Bắt đầu bằng cách copy lệnh hiện có năm lần nữa, đặt mỗi lệnh trên dòng riêng. Giữ dòng đầu như cũ, vì nó đã đạt mức nén cao nhất. Sửa các dòng còn lại, theo thứ tự, bằng cách bỏ tùy chọn thêm và giảm mức nén như bên dưới. Nhớ đổi alias cho khớp với mức nén thấp hơn.

Cách Đơn Giản Hóa Nén 7z Với Bash Aliases

Bạn luôn có thể copy dưới đây và paste vào ~/.bash_aliases.

alias 75='7z a -r -t7z -m0=lzma2 -mx=9 -myx=9 -mqs=on -ms=on' alias 74='7z a -r -t7z -m0=lzma2 -mx=9' alias 73='7z a -r -t7z -m0=lzma2 -mx=7' alias 72='7z a -r -t7z -m0=lzma2 -mx=5' alias 71= '7z a -r -t7z -m0=lzma2 -mx=3' alias 70='7z a -r -t7z -m0=lzma2 -mx=1'

Kích Hoạt Aliases Của Bạn

Lưu thay đổi vào file và quay lại terminal. Để tải và kích hoạt alias mới, dùng lệnh:

source ~/.bashrc

Lệnh nén mới của bạn đã active. P7zip hoạt động mặc định trên tất cả file trong thư mục nó chạy nếu bạn không định nghĩa "cái gì bạn muốn nén" làm tham số. Vì vậy từ nay mọi khi bạn muốn nén nội dung thư mục thành package 7z, chỉ cần nhập lệnh:

75 archive_name

Ở đây "75" là alias cho mức nén cao nhất từ trước, và "archive_name" là tên file package nén. Bạn có thể thay "75" bằng một trong các alias khác (từ 75 đến 70) cho nén dần nhỏ hơn nhưng nhanh hơn, và dùng bất kỳ tên gì bạn muốn cho file cuối.

Cách Đơn Giản Hóa Nén 7z Với Bash Aliases

Nếu bạn có câu hỏi, hãy cho chúng tôi biết trong bình luận dưới đây.