Мислех, че tar archive.tar /users/mylocation
ще работи, но не работи. Как мога да го направя?
За да извлечете архив в директория, различна от текущата, използвайте опцията -C
или --директория
, както в
tar -xf archive.tar -C /target/directory
Обърнете внимание, че целевата директория трябва да съществува преди изпълнението на тази команда (може да бъде създадена чрез mkdir /целева/директория
).
Прочетете страницата с ръководство (команда: man tar
) за други опции.
Имайте предвид, че ако вашият тарбал вече съдържа име на директория, което искате да промените, добавете опцията --strip-components=1
:
tar xf archive.tar -C /target/directory --strip-components=1
Комбиниране на предишните отговори и коментари:
За да просто извлечете съдържанието и да създадете целева директория, ако липсва:
mkdir -p /target/directory && tar xf archive.tar -C /target/directory
За извличане и премахване на главната директория (първо ниво) в zip
mkdir -p /target/directory && tar xf archive.tar -C /target/directory --strip-components=1