
  
tar เป็นคำสั่ง Unix ใช้สำหรับบีบอัดไฟล์และโฟลเดอร์ ให้ขนาดลดลง เพื่อลดพื้นที่ในการเก็บและสะดวกต่อการย้ายย้อมูล โดนมีรูปแบบต่างๆ เช่น .tar, .tar.gz, .cpio, .tar.bz2, .zip, .rar, etc. สำหรับบทความนี้จะนำเสนอคำสั่ง tar --exclude option คือการบีบอัดไฟล์โดยมีเงื่อนไข ยกเว้นไฟล์ที่ไม่ต้องการให้บีบอัด
ทดสอบสร้างไฟล์เดอร์
1. Open terminal และสร้างโฟลเดอร์ ด้วยคำสั่ง mkdir
user@user:~$ mkdir main_folder 
user@user:~$ cd main_folder 
 
user@user:~/main_folder$ touch file1.txt file2.txt file3.txt 
user@user:~/main_folder$ mkdir mkdir folder1 folder2 folder3 
 
 
user@user:~/main_folder$ ls 
file1.txt  file2.txt  file3.txt  folder1  folder2  folder3 
 
$ tar --exclude="pattern" [options] [archive_name] [path]option อื่นๆ-z: compresses the files and directories using gzip-c: creates a new archive file-v: verbosely lists the files and directories processed-f: allows us to specify a filename for the archive created-x: extract files from an archive-exclude: excludes file1.txt file when creating the archivetar(1) — Linux manual page
$ tar --exclude='file1.txt' -zcvf backup.tar.gz . ./ ./folder2/ ./folder3/ ./file3.txt ./file2.txt ./folder1/ตรวจสอบแตกไฟล์ด้วยคำสั่ง$ tar -zxvf backup.tar.gz ./ ./folder2/ ./folder3/ ./backup.tar.gz ./file3.txt ./file2.txt ./folder1/จากผลลัพธ์การแตกไฟล์ backup.tar.gz จะไม่มีไฟล์ file1.txt
$ tar --exclude='file1.txt' --exclude='folder1' -zcvf backup.tar.gz. ./ ./folder2/ ./folder3/ ./file3.txt ./file2.txtตรวจสอบแตกไฟล์ด้วยคำสั่ง$ tar -zxvf backup.tar.gz ./ ./folder2/ ./folder3/ ./file3.txt ./file2.txtจากผลลัพธ์การแตกไฟล์ backup.tar.gz จะไม่มีไฟล์ file1.txt และไม่มีโฟลเดอร์ folder1
$ tar --exclude='*.txt' -zcvf backup.tar.gz. ./ ./folder2/ ./folder3/ ./folder1/ตรวจสอบแตกไฟล์ด้วยคำสั่ง$ tar -zxvf backup.tar.gz ./ ./folder3/ ./folder2/ ./folder1/จากผลลัพธ์การแตกไฟล์ backup.tar.gz จะไม่มีไฟล์ที่นามสกุล .txt
