Як перенести ручку до каталогу призначення, відмінного від поточного?
Це не спрацювало:
gunzip *.gz /putthemhere/
Як перенести ручку до каталогу призначення, відмінного від поточного?
Це не спрацювало:
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використовується для отримання частини імені файлу без розширення)
Якщо вам потрібно витягнути один файл і записати в каталог, що належить root, тоді використовуйте sudo dd:
zcat filename.conf.gz | sudo tee /etc/filename.conf >/dev/null
Якщо файл надходить з віддаленого джерела (наприклад, ssh, curl https тощо), ви можете зробити це так:
ssh remoteserver cat filename.conf.gz | zcat | sudo tee /etc/filename.conf >/dev/null
(Зверніть увагу, що ці приклади працюють лише для одного файлу, на відміну від прикладу * .gz, який є всі gzipped файли в каталозі.)
sudo tee $filename >/dev/null- трохи більше ідіоматично, ніж використовувати dd.
Ви можете спробувати> перенаправити результат на потрібне місце.