Computer >> คอมพิวเตอร์ >  >> ระบบ >> Linux

วิธีลดความซับซ้อนของการบีบอัด 7z ด้วย Bash Aliases

วิธีลดความซับซ้อนของการบีบอัด 7z ด้วย Bash Aliases

มีหลายวิธีและเครื่องมือมากมายที่คุณสามารถใช้ในการย่อขนาดไฟล์ของคุณ ทั้งเพื่อลดพื้นที่ที่ใช้หรือส่งเป็นแพ็คเกจไปยังผู้ติดต่อ ในจำนวนนี้ 7-Zip ได้ก้าวขึ้นสู่จุดสูงสุดสำหรับผู้ใช้ส่วนใหญ่ ด้วยการผสมผสานที่เป็นเอกลักษณ์ของประสิทธิภาพที่ยอดเยี่ยมและระดับการบีบอัดโดยไม่มีค่าใช้จ่าย

การบีบอัดทุกรูปแบบในรูปแบบนี้ซับซ้อนกว่าวิธีที่เราจะเห็นในที่นี้ อย่างน้อยสำหรับผู้ใช้ส่วนใหญ่ที่ใช้การบีบอัดเพื่อแพ็คทุกอย่างในโฟลเดอร์และโฟลเดอร์ย่อยลงใน "มัด" ที่บีบอัด

มาดูกันว่าเราจะสามารถรวมการสนับสนุนของ Bash สำหรับนามแฝงกับเวอร์ชันบรรทัดคำสั่งของ 7z เพื่อสร้างแพ็คเกจของไฟล์ของเราด้วยคำสั่งง่ายๆ ได้อย่างไร

ติดตั้ง p7zip

เนื่องจากเป็นเครื่องมือบีบอัดที่ได้รับความนิยมมากที่สุด 7-Zip นั้นน่าจะติดตั้งอยู่แล้วในลีนุกซ์ของคุณ หากต้องการทดสอบ ให้ลองใช้คำสั่ง "7z" ในเทอร์มินัล หากไม่ได้ติดตั้ง คุณสามารถติดตั้งใน Ubuntu/Debian-based distributions ได้โดยใช้คำสั่ง:

sudo apt-get install p7zip-full

ไฟล์นามแฝง Ceate Bash

นามแฝงของ Bash อนุญาตให้ทำการแมปคำสั่งหรือแม้แต่ลำดับคำสั่งหลายคำสั่งเป็นคำเดียว วิธีง่ายๆ ในการเพิ่มนามแฝงใน Bash คือการแทรกที่ท้ายไฟล์ “~/.bashrc” เพื่อความสะดวกและจัดระเบียบ ขอแนะนำให้วางไว้ในไฟล์แยกต่างหาก

มีแนวโน้มว่าไฟล์นี้มีอยู่แล้ว และการกำหนดค่าของ Bash มีการอ้างอิงถึงไฟล์ดังกล่าว ตรวจสอบว่าเป็นโดยเปิด “~/.bashrc” ในโปรแกรมประมวลผลคำที่คุณชื่นชอบ แล้วค้นหา:

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

หากไม่เป็นเช่นนั้น ให้เพิ่มที่ท้ายไฟล์หลังจากทุกอย่างที่มีอยู่แล้ว

วิธีลดความซับซ้อนของการบีบอัด 7z ด้วย Bash Aliases

เตรียมข้อมูลของ 7-Zip ไว้ให้ดี

คุณสามารถเรียกใช้ 7-Zip ในเทอร์มินัลเพื่อดูรายการตัวเลือกบรรทัดคำสั่งได้ สำหรับข้อมูลที่ครอบคลุมมากขึ้น ไปที่คู่มือผู้ใช้นี้หรือ man page ของโปรแกรมด้วย:

man 7z

สิ่งเหล่านี้จะช่วยคุณในการตั้งค่าคำสั่งบีบอัดของคุณเอง เป็นไปได้มากว่าสิ่งที่เราเห็นที่นี่จะครอบคลุมความต้องการของคุณด้วย คุณจึงสามารถคัดลอกและวางลงในไฟล์ .bash_aliases ของคุณเองได้

วิธีลดความซับซ้อนของการบีบอัด 7z ด้วย Bash Aliases

สร้างนามแฝงที่มีการบีบอัดพิเศษ

เปิดไฟล์ “~/.bash_aliases” ในโปรแกรมประมวลผลคำที่คุณชื่นชอบ – เราใช้ nano ใส่:

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

วิธีลดความซับซ้อนของการบีบอัด 7z ด้วย Bash Aliases

alias 75 บอกว่าเราต้องการสร้างคำสั่ง "75" ที่เราจะใช้จากนี้ไปเพื่อบีบอัดไฟล์และโฟลเดอร์ทั้งหมดในไดเร็กทอรีลงในชุด 7-Zip ที่บรรจุไว้ เหตุผลที่เราใช้ชื่อแปลก ๆ นี้สำหรับคำสั่งของเราก็เพราะว่าง่ายต่อการเรียกเป็นเวอร์ชันสั้นของ "7zip compression level 5"

7z เป็นคำสั่งบีบอัดนั่นเอง a ต่อไปนี้หมายความว่า "เราต้องการเพิ่มไฟล์ลงในแพ็คเกจบีบอัดใหม่" -r ระบุว่า p7zip ไม่ควร "จำกัดเฉพาะโฟลเดอร์ที่เรียกใช้" แต่ควรรวมแพ็กเกจบีบอัดสุดท้ายและโฟลเดอร์ย่อยทั้งหมดไว้ในนั้น พร้อมด้วยเนื้อหาทั้งหมด

-t7z -m0=lzma2 ระบุว่าเราต้องการสร้างแพ็คเกจ 7zip ที่ใช้อัลกอริทึม LZMA2 สำหรับการบีบอัดไฟล์เป็นหลัก ซึ่งมักจะให้การบีบอัดที่ดีที่สุดสำหรับไฟล์ประเภทต่างๆ ส่วนใหญ่

-mx=9 -myx=9 สอดคล้องกับระดับของการบีบอัดและ "ความพยายาม" 7-Zip จะทำการวิเคราะห์เนื้อหาของไฟล์ที่จะบีบอัดเพื่อค้นหากลยุทธ์การบีบอัดที่ดีที่สุด ยิ่งค่าของพวกมันสูงขึ้น การบีบอัดก็จะยิ่งมากขึ้น และบันเดิลที่ผลิตได้มีขนาดเล็กลง

สุดท้าย -mqs=on -ms=on กำหนดว่าเราต้องการการบีบอัดแบบ "แข็ง" ซึ่งหมายความว่า p7zip จะบีบอัดไฟล์ที่คล้ายกันเป็นข้อมูลชิ้นเดียว เพื่อให้ได้ผลลัพธ์ที่ดียิ่งขึ้น เหตุผลที่มีอยู่เป็นตัวเลือกที่คุณสามารถปิดได้เนื่องจากมีประโยชน์ แต่ยังมาพร้อมกับฟิล์มเนกาทีฟสองรายการ พวกเขายืดเวลาการบีบอัดและทำให้ไม่สามารถขยายไฟล์อิสระจากบันเดิลสุดท้ายที่คอมเพรสเซอร์สร้างขึ้น ด้วยการบีบอัดแบบทึบ คุณไม่สามารถดำเนินการเทียบเท่ากับ "การแยกไฟล์เดียวจากไฟล์ zip" และคุณต้องคลายการบีบอัดทั้งชุดเพื่อเข้าถึงเนื้อหา

ทำซ้ำและ "ตัด" นามแฝง

เราเริ่มด้วยคำสั่งที่ทำให้บีบอัดได้สูงสุด แทนที่จะต้องขยายด้วยองค์ประกอบเพิ่มเติม เราสามารถย้อนกลับ ลบพารามิเตอร์ และลดค่าที่ตั้งไว้

เริ่มต้นด้วยการคัดลอกคำสั่งที่มีอยู่อีกห้าครั้ง โดยวางแต่ละคำสั่งในบรรทัดของตัวเอง ปล่อยให้บรรทัดแรกเป็นไปตามที่มันเป็น เพราะมันบรรลุระดับการบีบอัดสูงสุดแล้ว ปรับเปลี่ยนส่วนที่เหลือตามลำดับ โดยลบตัวเลือกเพิ่มเติมและลดระดับการบีบอัดตามที่แสดงด้านล่าง อย่าลืมเปลี่ยนนามแฝงเพื่อให้ตรงกับระดับการบีบอัดที่ต่ำกว่า

วิธีลดความซับซ้อนของการบีบอัด 7z ด้วย Bash Aliases

คุณสามารถคัดลอกสิ่งต่อไปนี้แล้ววางลงใน ~/.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'

เปิดใช้งานนามแฝงของคุณ

บันทึกการเปลี่ยนแปลงในไฟล์และกลับไปที่เทอร์มินัล ในการโหลดและเปิดใช้งานนามแฝงใหม่ของคุณ ให้ใช้คำสั่ง:

source ~/.bashrc

คำสั่งบีบอัดใหม่ของคุณทำงานอยู่ P7zip ทำงานโดยค่าเริ่มต้นกับไฟล์ทั้งหมดในไดเร็กทอรีที่มันทำงาน หากคุณไม่ได้กำหนด "สิ่งที่คุณต้องการบีบอัด" เป็นพารามิเตอร์ ดังนั้นสิ่งที่คุณต้องทำต่อจากนี้ไปเมื่อคุณต้องการบีบอัดเนื้อหาของโฟลเดอร์ลงในแพ็คเกจ 7z ก็คือป้อนคำสั่ง:

75 archive_name

ในที่นี้ “75” คือนามแฝงสำหรับระดับการบีบอัดสูงสุดจากรุ่นก่อน และ “archive_name” คือชื่อของแพ็คเกจไฟล์บีบอัด คุณแทนที่ “75” ด้วยชื่อแทนอื่นๆ ได้ (จาก 75 ถึง 70) เพื่อการบีบอัดที่เล็กลงแต่เร็วขึ้น และใช้ชื่อใดก็ได้ที่คุณต้องการสำหรับไฟล์สุดท้าย

วิธีลดความซับซ้อนของการบีบอัด 7z ด้วย Bash Aliases

หากคุณมีคำถามใด ๆ โปรดแจ้งให้เราทราบในความคิดเห็นด้านล่าง