9mza logo

9MZa.net

9mza logo

9MZa.net

การบีบอัดไฟล์และโฟลเดอร์เป็น .7zip ด้วย bash script

Linux
การบีบอัดไฟล์และโฟลเดอร์เป็น .7zip ด้วย bash script

ในการบีบอัดไฟล์ใน Linux ปกติเราก็อาจจะใช้โปรแกรมที่เป็น GUI มาช่วย แต่ในบางกรณ์ เราอาจจะต้อง remote ไปยังเครื่องอื่น แล้วเครื่องนั้นไม่สามารถลงโปรแกรมแบบ GUI ได้ อย่างเช่น เครื่อง Server แล้วเราต้องการไฟล์จากเครื่องนั้น ลำพังจะดาวน์โหลดทีละไฟล์ก็แสนจะลำบาก จะดีกว่าไหม ถ้าเราจะบีบไฟล์ไว้ก่อน แล้วค่อยดาวน์โหลดทีเดียว

โดยปกติเราสามารถบีบ .zip ได้เลย โดยไม่ต้องลงติดตั้งโปรแกรมเพิ่ม แต่ในกรณีนี้ผมอยากได้ .7zip ซึ่งเป็นไฟล์ที่มีขนาดเล็กกว่า .zip และมีความเข้ารหัสที่ดีกว่า ดังนั้นในบทความนี้เราจะมาดูวิธีการบีบอัดไฟล์และโฟลเดอร์เป็น .7zip ด้วย bash script กัน

การติดตั้ง p7zip

สำหรับ Linux ที่ใช้งานเป็น Debian และ Ubuntu สามารถติดตั้งโดยใช้คำสั่ง

Bash Logo
sudo apt-get install p7zip-full

สำหรับ Linux ที่ใช้งานเป็น Arch Linux สามารถติดตั้งโดยใช้คำสั่ง

Bash Logo
sudo pacman -S p7zip

สำหรับ Linux ที่ใช้งานเป็น Fedora สามารถติดตั้งโดยใช้คำสั่ง

Bash Logo
sudo dnf install p7zip

สำหรับ Linux ที่ใช้งานเป็น CentOS สามารถติดตั้งโดยใช้คำสั่ง

Bash Logo
sudo yum install p7zip

สำหรับ Linux ที่ใช้งานเป็น openSUSE สามารถติดตั้งโดยใช้คำสั่ง

Bash Logo
sudo zypper install p7zip

สำหรับ macOS สามารถติดตั้งโดยใช้ Homebrew ได้ โดยการติดตั้ง Homebrew สามารถดูได้ที่ https://brew.sh/

Bash Logo
brew install p7zip

การบีบอัดไฟล์และโฟลเดอร์

การบีบอัดไฟล์และโฟลเดอร์เป็น .7zip สามารถทำได้โดยใช้คำสั่ง

Bash Logo
7z a sample.7z sample

โดย sample คือชื่อไฟล์ที่ต้องการบีบอัด และ sample.7z คือชื่อไฟล์ที่ได้จากการบีบอัด

เราสามารถกำหนดระดับการบีบอัดได้ โดยใช้คำสั่ง -mx=9

Bash Logo
7z a -mx=9 sample.7z sample

ซึ่ง 9 คือระดับการบีบอัดสูงสุด และค่าเริ่มต้นคือ 7

การแตกไฟล์ .7zip

ทำได้ง่ายๆ โดยใช้คำสั่งตามนี้

Bash Logo
7z x sample.7z

โดย sample.7z คือชื่อไฟล์ที่ต้องการแตก

และนี่ก็คือการบีบอัดและแตกไฟล์ .7zip ด้วย p7zip โดยใช้งานผ่าน Command Line Interface ซึ่งพอใช้คล่องๆ แล้ว รู้สึกชีวิตสะดวกสบายขึ้นมาก ก็หวังว่าบทความนี้จะเป็นประโยชน์แก่ทุกท่านที่เข้ามาอ่านนะครับ