Я попробовал обоих gzip
и gunzip
команды, но я добираюсь также
gunzip *.gz
gzip: invalid option -- 'Y'
gunzip -S-1800-01-01-000000-g01.h5.gz
gzip: compressed data not read
from a terminal. Use -f to force decompression. For help, type: gzip -h
Если я пробую -f
опция требуется очень долгое время для работы над одним единственным файлом и командой, не выполняется успешно. Я пропускаю что-то?
Можно использовать ниже команды.
Переходят к каталогу, где Ваш .gz
файл и команда выполнения:
for f in *.gz ; do gunzip -c "$f" > /home/$USER/"${f%.*}" ; done
Это извлечет весь файл с настоящим именем и сохранит его к текущему пользовательскому корневому каталогу (/home/username
). Можно изменить его на где-то в другом месте.
РЕДАКТИРОВАНИЕ:
gunzip *.gz
Эта команда также будет работать. Но по умолчанию это заменяет исходный файл.
Опция № 1 : разархивируйте несколько файлов с помощью одинарной кавычки (короткая версия)
gunzip '*.gz'
Примечание, что *.gz
слово помещается промежуточные две одинарных кавычки, так, чтобы оболочка не распознавала его как подстановочный символ.
Опция № 2 : разархивируйте несколько файлов с помощью оболочки для цикла (долгая версия)
for g in *.gz; do gunzip $g; done
РЕДАКТИРОВАНИЕ:
я только что попробовал:
gunzip -dk *.gz
и это работало.
-d
для распаковки и k
для хранения исходных файлов.
Пользователи Linux:
Использование следующая команда для извлечения минимального количества .gz файлов в текущем каталоге и его подкаталогах
gunzip *.gz
Использование следующая команда для извлечения любого количества .gz файлов в текущем каталоге и его подкаталогах
sudo find . -name "*.gz" | xargs gunzip