Đối với GNU gzip
1.6 trở lên, FreeBSD và các dẫn xuất hoặc các phiên bản gần đây của NetBSD, xem câu trả lời của don_cristi .
Với bất kỳ phiên bản nào, bạn có thể sử dụng chuyển hướng shell như trong:
gzip < file > file.gz
Khi không đưa ra bất kỳ đối số nào, hãy gzip
đọc đầu vào tiêu chuẩn của nó, nén nó và ghi phiên bản nén vào đầu ra tiêu chuẩn của nó. Như một phần thưởng, khi sử dụng chuyển hướng shell, bạn không phải lo lắng về các tệp được gọi "--help"
hoặc "-"
(cái sau này vẫn còn là một vấn đề đối với gzip -c --
).
Một lợi ích khác gzip -c file > file.gz
là nếu file
không thể mở được, lệnh sẽ thất bại nếu không tạo một khoảng trống file.gz
(hoặc ghi đè lên hiện có file.gz
) và hoàn toàn không chạy gzip
.
Một sự khác biệt đáng kể so với gzip -k
mặc dù là sẽ không có nỗ lực sao chép file
siêu dữ liệu (quyền sở hữu, quyền, thời gian sửa đổi, tên của tệp không nén) sang file.gz
.
Ngoài ra, nếu file.gz
đã tồn tại, nó sẽ âm thầm ghi đè lên trừ khi bạn đã bật noclobber
tùy chọn trong vỏ của mình ( set -o noclobber
ví dụ như trong vỏ POSIX).