GNU tar sống trên viêm featur, do đó, tự nhiên cũng có một số tùy chọn cho điều đó.
http://www.gnu.org/software/tar/manual/html_node/transform.html
Nếu bạn chỉ muốn xóa một vài đoạn đường, sau đó --strip-components=n
hoặc --strip=n
thường xuyên sẽ làm:
tar xvzf tgz --strip=1
Nhưng bạn cũng có thể viết lại các tệp cần trích xuất (các cờ được --transform
hoặc --xform
chấp nhận ereg với /x
modifer):
tar xvzf tgz --xform='s#^[^/]+#.#x'
# or 's#^.+/##x' for discarding all paths
Để liệt kê một tar bạn cần --show-transformed
tùy chọn bổ sung :
tar tvzf tgz --show-transformed --strip=1 --xform='s/abc/xyz/x'
Tôi tin rằng các tùy chọn viết lại cũng hoạt động để đóng gói, không chỉ để giải nén. Nhưng pax
rõ ràng có một cú pháp đẹp hơn.