Как я могу заархивировать в каталог назначения, отличный от текущего?
Это не сработало:
gunzip *.gz /putthemhere/
Попросить gunzip
вывести на стандартный вывод и перенаправить в файл в этом каталоге:
gunzip -c file.gz > /THERE/file
zcat
это ярлык для gunzip -c
.
Если вы хотите разархивировать несколько файлов, переберите все файлы:
for f in *.gz; do
STEM=$(basename "${f}" .gz)
gunzip -c "${f}" > /THERE/"${STEM}"
done
(здесь basename
используется для получения части имени файла без расширения)
Если вам нужно извлечь один файл и записать его в корневой каталог, используйте
sudo dd
:Если файл поступает из удаленного источника (например, ssh, curl https и т. Д.), Вы можете сделать это следующим образом:
(Обратите внимание, что эти примеры работают только для одного файла, в отличие от примера * .gz, который представляет собой все сжатые файлы в каталоге.)
источник
sudo tee $filename >/dev/null
немного более идиоматичен, чем использованиеdd
.Вы можете попробовать с помощью> перенаправить результат в нужное место.
источник