![](https://tekzone.vn/wp-content/uploads/2023/07/tar-archiving-utility.jpg)
Lệnh tar lần đầu tiên được phát triển trong Bell Laboratories để nén file, thư mục bất kỳ phương tiện kỹ thuật số nào trên các bản sao lưu . Một trong những tính năng mạnh mẽ của GNU Tar là tính linh hoạt của nó đối với việc xử lý dữ liệu. Nó cung cấp các tùy chọn cho phép bạn nén, giải nén và thậm chí chuyển sang UNIX
Lệnh Tar | Tác dụng |
---|---|
Tạo file nén | |
tar -cf ./output.tar ./input/ | Tạo một file nén với tên “output.tar” từ thư mục “input.” |
tar -cf ./device.tar /dev/sda1 | Tạo một file nén có tên “device.tar” bằng cách sử dụng nội dung của toàn bộ phân vùng sda1. |
tar -czf ./output.tar.gz ./input/ | Tạo một file nén có tên “output.tar” từ thư mục “input”. |
tar -cjf ./output.tar.bz2 ./input/ | Tạo một file nén có tên “output.tar.gz” và nén nó bằng thuật toán GZIP. |
tar -cJf ./output.tar.xz ./input/ | Tạo một file nén mới với tên “output.tar.xz” và nén nó bằng thuật toán XZ. |
tar -cZf ./output.tar.z ./input/ | Tạo một file nén mới có tên “output.tar.xz” và nén nó bằng thuật toán XZ. |
tar –lzip -cf ./output.tar.lz ./input/ | Tạo một file nén mới có tên “output.tar.z” và nén nó bằng thuật toán LZ. |
tar –lzop -cf ./output.tar.lzo ./input/ | Tạo một file nén mới có tên là “output.tar.lz” và nén nó bằng thuật toán LZIP. |
tar -cML 1024000 -f ./output.tar ./large.file | Tách file “large.file” thành một tập hợp các file lưu trữ nhiều phần có dung lượng 1GB. |
tar -hcf ./output.tar ./input.link | Tạo một file nén mới có tên là “output.tar.lzo” và nén nó bằng thuật toán LZOP. |
tar –format=v7 -cf ./output.tar ./input/ | Đảm bảo rằng file nén “output.tar” tương thích với tar V7 UNIX gốc. |
tar –sort=name -cf ./output.tar ./input/ | Tạo một file nén mới với tên “output.tar” và sắp xếp nội dung của nó theo thứ tự bảng chữ cái. |
tar –warning=none -cf ./output.tar ./input/ | Vô hiệu hóa tất cả các thông báo cảnh báo khi tạo “output.tar.” |
tar –warning=all -cf ./output.tar ./input/ | In tất cả các thông báo cảnh báo khi tạo “output.tar.” |
tar -wcf ./output.tar ./input/ | Kích hoạt chế độ tương tác của Tar trong quá trình tạo file nén. |
Lọc loại file nén | |
tar –loại trừ-sao lưu -cf ./output.tar ./input/ | Tạo một file nén nhưng không bao gồm bất kỳ file khóa cơ sở dữ liệu nào cũng như các file sao lưu nhị phân trong đầu ra cuối cùng. |
tar –exclude-caches -cf ./output.tar ./input/ | Tạo một file nén nhưng không bao gồm bất kỳ file bộ đệm nào trong đầu ra cuối cùng. |
tar –exclude-vcs -cf ./output.tar ./input/ | Tạo một file nén nhưng không bao gồm bất kỳ file nào có tên “foo” trong đầu ra cuối cùng. |
tar –exclude=foo -cf ./output.tar ./input/ | Tạo một file nén nhưng không bao gồm bất kỳ file nào có tên “foo” trong đầu ra cuối cùng. |
tar –exclude-tag-all=foo -cf ./output.tar ./input/ | Tạo một file nén nhưng không bao gồm bất kỳ thư mục nào chứa file “foo”. |
tar –no-recursion -cf ./output.tar ./input/ | Tạo một file nén nhưng không xuống bất kỳ thư mục con nào trong thư mục hiện tại. |
tar –no-unquote -cf ./output.tar ./”input”/ | Tạo một file nén và coi các trích dẫn trong thư mục đầu vào là các ký tự chữ. |
tar -Pcf ./output.tar /home/$USER/input/ | Tạo một file nén và đảm bảo rằng tất cả các đường dẫn thư mục bên trong là tuyệt đối. |
tar –newer=2023-06-30 -cf ./output.tar ./input/ | Tạo một file nén nhưng chỉ bao gồm các file bên trong thư mục “đầu vào” được tạo sau ngày 30 tháng 6. |
tar –remove-files -cf ./output.tar ./input/ | Tạo một file nén và xóa nội dung của thư mục “đầu vào” sau khi quá trình lưu trữ hoàn tất. |
tar -Wcf ./output.tar ./input/ | Tạo một file nén và xác minh tính toàn vẹn của nó sau khi hoàn tất. |
tar –ignore-case -cf ./output.tar ./InpuT/ | Tắt phân biệt chữ hoa chữ thường của Tar khi tạo file lưu trữ mới. |
tar -C /other/thư mục -cf ./output.tar ./input/ | Di chuyển thư mục làm việc hiện tại của Tar và tạo một file nén bằng thư mục đầu vào bên trong nó. |
Kiểm tra file nén | |
tar -tf ./output.tar | In nội dung của “output.tar” ở format ngắn. |
tar -tvf ./output.tar | In nội dung của “output.tar” ở format dài. |
tar –index-file=foo -tvf ./output.tar | In nội dung của “output.tar” ở format dài và lưu vào file “foo.” |
tar –utc -tvf ./output.tar | In nội dung của “output.tar” và chuyển đổi tất cả thời gian sửa đổi thành UTC. |
tar –totals -tvf ./output.tar | In nội dung của “output.tar” và hiển thị tổng số byte cho file nén. |
tar –checkpoint -cf ./output.tar ./input/ | In quá trình lưu trữ của file tar hiện tại cứ sau 10 thành viên lưu trữ. |
tar -tvRf ./output.tar | In số khối cho mọi thành viên trong “output.tar.” |
Sửa đổi file nén | |
tar –group=foo -xf ./output.tar | Chỉ bao gồm nội dung mới hơn ở cuối file nén “output.tar”. |
tar –user=foo -xf ./output.tar | Chỉ bao gồm nội dung mới hơn ở cuối file nén “output.tar”. |
tar -rf ./output.tar ./new-input/ | Bao gồm nội dung của thư mục “new-input” ở cuối file nén “output.tar”. |
tar -uf ./output.tar ./input/ | Cập nhật chủ sở hữu của tất cả nội dung của file nén thành “foo”. |
tar –checkpoint-action=’cmd’ -cf ./output.tar ./input/ | Chạy lệnh “cmd” trên file nén cứ sau 10 thành viên file nén. |
Giải nén file Linux | |
tar -xf ./output.tar | Trích xuất “output.tar” trên thư mục làm việc hiện tại. |
tar -xkf ./output.tar | Giải nén “output.tar” nhưng không thay thế bất kỳ file nào hiện có trong thư mục. |
tar –keep-newer-files -xf ./output.tar | Giải nén “output.tar” nhưng không thay thế bất kỳ file nào mới hơn nội dung của file nén. |
tar –no-overwrite-dir -xf ./output.tar | Giải nén “output.tar” nhưng không sửa đổi thuộc tính của bất kỳ thư mục nào trong thư mục hiện tại. |
tar –keep-directory-symlink -xf ./output.tar | Giải nén “output.tar” nhưng không sửa đổi bất kỳ liên kết tượng trưng nào trong thư mục hiện tại. |
tar –overwrite -xf ./output.tar | Giải nén “output.tar” và thay thế tất cả các file trong thư mục hiện tại. |
tar -mxf ./output.tar | Giải nén “output.tar” nhưng không sử dụng các giá trị “mtime” của các file đã lưu trữ trong quá trình giải nén. |
tar –preserve -xf ./output.tar | Giải nén “output.tar” và không cập nhật quyền của người dùng và nhóm cho người dùng hiện tại. |
tar -wxf ./output.tar | Kích hoạt chế độ tương tác của Tar trong quá trình trích xuất file nén. |
tar –strip-components=3 -xf ./output.tar | Chỉ giải nén bất kỳ file nào bên trong “output.tar” có ba thư mục sâu. |
tar –transform=s/pattern/string/ -xf ./output.tar | Giải nén file nén “output.tar” và thay thế mọi file có tên “mẫu” bằng “chuỗi”. |
tar –warning=none -xf ./output.tar | Vô hiệu hóa tất cả các thông báo cảnh báo trong khi giải nén “output.tar.” |
tar –warning=all -xf ./output.tar | In tất cả các thông báo cảnh báo trong khi giải nén “output.tar.” |