Я новичок в мире Linux и, похоже, столкнулся с камнем преткновения. Я знаю , что может извлечь архив с помощью , специфических команд , tar xvfz archivename.tar.gz sampledir/
однако , как можно извлечь , sampledir/
чтобы testdir/
вместо пути , что архив находится в egcurrently архив находится в пути , /tmp/archivename.tar.gz
и я хотел бы, чтобы извлечь sampledir
на testdir
который находится в пути /tmp/testdir
.
14
Вам не нужно играть в сумасшедшие игры со всем без исключения. Tar полностью поддерживает только извлечение подмножества файлов в архиве, как показано в следующем (тривиальном) примере:
Хитрость в том, что pathspec должен точно соответствовать содержимому tar-файла. Поэтому, когда вы делаете
tar tf
, если путь начинается с./
, вы должны вставить это, и если у него его нет, вы должны его пропустить. Кроме того, если вы хотите извлечь подпуть sub-sub-sub-sub-sub-sub-sub-path, то это закончится N уровнями глубоко в файловой системе, когда вы закончите.источник
-C
вариант tar, тогда.