Tạo tệp .tar.bz2 trên Linux


85

Trên máy Linux của mình, tôi muốn tạo tệp .tar.bz2 của một thư mục nhất định. Khi tôi đặt mình vào thư mục đó (trong thiết bị đầu cuối), tôi phải nhập gì vào dòng lệnh đầu cuối để đặt thư mục nén vào thư mục chính của máy tính của mình?

Giả sử tôi đang ở trong thư mục / home / user / folder. Trong thư mục "thư mục" là một số tệp (txt, .c, v.v.). Làm cách nào để nén thư mục kiểu .tar.bz2 và đặt nó vào thư mục / home của tôi?

Trong thư mục / home / user /, tôi đã thử sudo tar -cvjSf folder.tar.bz2nhưng gặp lỗi:

tar: hèn nhát từ chối tạo một kho lưu trữ trống


10
Tôi đề cử điều này cho giải thưởng Vô dụng-sử dụng-sudo, vì bạn đang làm việc trong thư mục chính của mình, không cần phải đánh thức người dùng siêu cấp.
Afr


1
Đối với những người thắc mắc - c= tạo, v= tiết, j= nén bz2, S= hiệu quả thưa thớt, f= tên tệp đầu ra. Tôi không biết chính xác những gì Skhông, đây chỉ là một danh sách từ trang người đàn ông
user3728501

Câu trả lời:


167

Bạn không chỉ ra những gì cần đưa vào kho lưu trữ.

Đi một cấp độ bên ngoài thư mục của bạn và thử:

sudo tar -cvjSf folder.tar.bz2 folder

Hoặc từ cùng một thư mục, hãy thử

sudo tar -cvjSf folder.tar.bz2 *

Chúc mừng!


2
Chỉ cần lưu ý rằng nếu bạn sử dụng tùy chọn thứ hai, * không bao gồm các tệp ẩn trong thư mục hiện tại của bạn (bắt đầu bằng ký tự fullstop). Vì vậy, tùy chọn đầu tiên tốt hơn vì nó sẽ bao gồm các tệp ẩn.
Shervin Emami

3
Này, bạn có thể thay đổi '*' cho '.' trong tùy chọn thứ hai để bao gồm các tệp ẩn.
pietromenna

3
OpenBSD không có 'S ' tùy chọn, FreeBSD đã nhận nó thay vì nhưng chỉ với 'tùy chọn trích xuất', vì vậy cách tốt nhất nên đượctar cvjf
b3h3m0th

11

Hãy thử điều này từ thư mục khác:

sudo tar -cvjSf folder.tar.bz2 folder/*
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.