Како издвојити датотеке из .тар.гз или .тар.бз2 датотеке на Линук-у

Тар датотеке су компримоване архиве. Често ћете их сретати док користите Линук дистрибуцију као што је Убунту или чак док користите терминал на мацОС-у. Ево како да издвојите—или унтар—садржај тар датотеке, такође познатог као тарбалл.

Шта значе .тар.гз и .тар.бз2?

Датотеке које имају екстензију .тар.гз или .тар.бз2 су компримоване архивске датотеке. Датотека са само екстензијом .тар је некомпримована, али то ће бити веома ретко.

.тар део екстензије датотеке означава архиву траке и разлог је што се обе ове врсте датотека називају тар датотеке. Тар датотеке датирају све до 1979. године када је створена команда тар како би се системским администраторима омогућило да архивирају датотеке на траку. Четрдесет година касније још увек користимо команду тар да екстрахујемо тар датотеке на наше чврсте дискове. Неко негде вероватно још увек користи катран са траком.

Суфикс екстензије .гз или .бз2 означава да је архива компримована, користећи алгоритам за компресију гзип или бзип2. Команда тар ће добро функционисати са обе врсте датотека, тако да није битно који је метод компресије коришћен — и требало би да буде доступна свуда где имате Басх шкољку. Само треба да користите одговарајуће опције командне линије тар.

Екстраховање датотека из Тар датотека

Рецимо да сте преузели две датотеке нота. Једна датотека се зове укулеле_сонгс.тар.гз, друга се зове гуитар_сонгс.тар.бз2. Ове датотеке се налазе у директоријуму Преузимања.

  Најбоље Линук дистрибуције у 2024, рангиране

Хајде да издвојимо песме укулеле:

tar -xvzf ukulele_songs.tar.gz

Како се датотеке екстрахују, оне су наведене у прозору терминала.

Опције командне линије које смо користили су:

-к: Извуците, преузмите датотеке из тар датотеке.
-в: Опширно, наведите датотеке док се извлаче.
-з: Гзип, користите гзип да декомпресујете тар датотеку.
-ф: Датотека, име тар датотеке са којом желимо да тар ради. Ову опцију мора пратити име тар датотеке.

Наведите датотеке у директоријуму помоћу лс и видећете да је креиран директоријум под називом Укулеле песме. Извучене датотеке се налазе у том директоријуму. Одакле је дошао овај именик? Био је садржан у тар датотеци и распакован је заједно са датотекама.

Хајде сада да издвојимо песме на гитари. Да бисмо то урадили, користићемо скоро потпуно исту команду као и пре, али са једном важном разликом. Суфикс екстензије .бз2 нам говори да је компримован помоћу команде бзип2. Уместо да користимо опцију -з (гзип), користићемо опцију -ј (бзип2).

tar -xvjf guitar_songs.tar.bz2

Још једном, датотеке се наводе на терминалу док се екстрахују. Да буде јасно, опције командне линије које смо користили са тар за .тар.бз2 датотеку су биле:

-к: Извуците, преузмите датотеке из тар датотеке.
-в: Опширно, наведите датотеке док се извлаче.
-ј: Бзип2, користите бзип2 да декомпресујете тар датотеку.
-ф: Датотека, име тар датотеке са којом желимо да тар ради.

Ако наведемо датотеке у директоријуму за преузимање видећемо да је креиран још један директоријум под називом Гуитар Сонгс.

Одабир где да издвојите датотеке

Ако желимо да издвојимо датотеке на локацију која није тренутни директоријум, можемо да наведемо циљни директоријум користећи опцију -Ц (наведени директоријум).

tar -xvjf guitar_songs.tar.gz -C ~/Documents/Songs/

Гледајући у наш директоријум Документи/Песме видећемо да је креиран директоријум Гуитар Сонгс.

  Како да подесите резервну копију налик Мац-у на Линук-у са Тимесхифт-ом

Имајте на уму да циљни директоријум већ мора постојати, тар га неће креирати ако није присутан. Ако треба да креирате директоријум и да тар извуче све датотеке у њега у једној команди, то можете учинити на следећи начин:

mkdir -p ~/Documents/Songs/Downloaded && tar -xvjf guitar_songs.tar.gz -C ~/Documents/Songs/Downloaded/

Опција -п (родитељи) узрокује да мкдир креира све родитељске директоријуме који су потребни, осигуравајући да је циљни директоријум креиран.

Гледање унутар Тар фајлова пре него што их извучете

До сада смо само мало веровали и извукли невиђене фајлове. Можда бисте желели да погледате пре него што скочите. Можете прегледати садржај тар датотеке пре него што је издвојите коришћењем опције -т (лист). Обично је згодно извести излаз кроз мање команду.

tar -tf ukulele_songs.tar.gz | less

Приметите да не морамо да користимо опцију -з за листање датотека. Морамо само да додамо опцију -з када извлачимо датотеке из .тар.гз датотеке. Исто тако, није нам потребна опција -ј да бисмо навели датотеке у датотеци тар.бз2.

Скроловањем кроз излаз можемо видети да се све у тар датотеци налази у директоријуму који се зове Укулеле песме, а унутар тог директоријума постоје датотеке и други директоријуми.

Можемо видети да директоријум Укулеле песме садржи директоријуме под називом Рандом Сонгс, Рамонес и Поссиблес.

Да бисте издвојили све датотеке из директоријума унутар тар датотеке, користите следећу команду. Имајте на уму да је путања умотана у наводнике јер у путањи има размака.

tar -xvzf ukulele_songs.tar.gz "Ukulele Songs/Ramones/"

Да бисте издвојили једну датотеку, наведите путању и име датотеке.

tar -xvzf ukulele_songs.tar.gz "Ukulele Songs/023 - My Babe.odt"

Можете издвојити избор датотека помоћу џокер знакова, где * представља било који низ знакова и ? представља било који појединачни знак. Коришћење џокер знакова захтева употребу опције –вилдцардс.

tar -xvz --wildcards -f ukulele_songs.tar.gz "Ukulele Songs/Possibles/B*"

Екстраховање датотека без распакивања директоријума

Ако не желите да се структура директоријума у ​​тар датотеци поново креира на вашем чврстом диску, користите опцију –стрип-цомпонентс. Опција –стрип-цомпонентс захтева нумерички параметар. Број представља колико нивоа директоријума треба занемарити. Датотеке из занемарених директоријума се и даље издвајају, али структура директоријума се не реплицира на ваш чврсти диск.

  10 најбољих заштитних зидова за Линук за ефикасну заштиту система [2023]

Ако наведемо –стрип-цомпонентс=1 са нашим примером тар датотеке, највиши директоријум Укулеле песама унутар тар датотеке неће бити креиран на чврстом диску. Датотеке и директоријуми који би били распаковани у тај директоријум се издвајају у циљни директоријум.

tar -xvzf ukulele_songs.tar.gz --strip-components=1

Постоје само два нивоа угнежђења директоријума унутар нашег примера тар датотеке. Дакле, ако користимо –стрип-цомпонентс=2, све датотеке се издвајају у циљни директоријум и не креирају се други директоријуми.

tar -xvzf ukulele_songs.tar.gz --strip-components=2

Ако погледате Линук ман страница видећете да тар мора да буде добар кандидат за титулу „команда која има највише опција командне линије“. Срећом, да бисмо нам омогућили да екстрахујемо датотеке из .тар.гз и тар.бз2 датотека са добрим степеном детаљне контроле, потребно је да запамтимо само неколико ових опција.