Làm thế nào để ngăn tar lưu trữ đường dẫn gốc đến tập tin?


7

Khi tôi chạy lệnh sau:

tar cfvz backup.tar.gz /path/to/my/files/*

Nó gzips toàn bộ con đường. Vì vậy, khi tôi giải nén tệp, tôi phải mở 4 thư mục (đường dẫn -> đến -> tệp -> của tôi) để đến tệp mà tôi muốn sao lưu.

Làm cách nào để làm cho các tệp hiển thị trong thư mục gốc của tệp được giải nén thay vì toàn bộ đường dẫn?

Cảm ơn trước!


3
Bạn đã thử chưa: cd /path/to/my/filesvà sau đótar czvf backup.tgz *
cfreire

3
Các --strip-componentstùy chọn trong khi un-taring cũng sẽ giúp. Ngoài ra, tarkhông cung cấp cho bạn nhiều cdcách tiếp cận với con đường bạn muốn sao lưu sẽ là giải pháp nhanh chóng duy nhất xuất hiện trong đầu.
slhck

@cfreire @slhck Không thể tin rằng tôi đã không nghĩ đến cd.... Cảm ơn rất nhiều!
Ben Sinclair

@cfreire, slhck một trong các bạn sẽ đăng nó như là một câu trả lời?
terdon

Câu trả lời:


10

Thử tùy chọn -C:

tar cvzf backup.tar.gz -C /path/to/my/files/ .


1

Tôi cho rằng đây là một kịch bản nên hãy thử một cái gì đó như ...

pushd /path/to/my/files
tar cfvz backup.tar.gz *
popd

Tar sẽ chỉ bao gồm đường dẫn được chỉ định trên dòng lệnh.

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.