1

У меня есть tar-файл, который содержит сотни электронных таблиц, внутри tar-файла есть каталог home/common/4000_UW_spreadsheets что я хочу сделать, это извлечь один файл в текущий каталог, /home/qc/me/archive без распаковки каталог внутри файла tar.

Есть ли способ сделать это без добавления всего каталога в рабочий каталог?

Я знаю, что могу использовать tar --extract [FILE] но это также извлекает каталог home/common/4000_UW_spreadsheets .

Пожалуйста, предположите, что я не могу ничего скачать

1 ответ1

1

Вы можете использовать --strip-components.

tar -xf spreadsheets.tar --strip-components 3 извлечет все файлы из /home/qc/me/archive в текущий каталог или, если вы используете ключ -C, в указанный каталог:

tar -xf spreadsheets.tar --strip-components 3 -C /home/qc/me/archive

Последняя строка кода выглядит так, как вам нужно.

РЕДАКТИРОВАТЬ: я пропустил ту часть, где вы хотели только один извлеченный файл, хотя он был курсивом и жирным шрифтом. Это должно быть более уместным:

tar -xf spreadsheets.tar -C /home/qc/me/archive home/common/4000_UW_spreadsheets/my_spreadsheet --strip-components 3

Только что проверил эту строку, и она работает так, как вы хотите.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .