Według tej strony można pozwolić tarowi na utworzenie archiwum tar „podzielonego” na pliki 100 Mb:
tar -c -M --tape-length = 102400 --file = disk1.tar largefile.tgz
Problem polega na tym, że to polecenie będzie wymagało interakcyjnego podania nowej nazwy pliku dla następnego pliku, po wypełnieniu pierwszego pliku.
Czy ktoś wie, jak pominąć ten interaktywny krok i pozwolić tarowi wykonać „podział” automatycznie?
Odpowiedzi:
Spójrz na
--new-volume-script
opcję, która pozwala zastąpić mechanizm monitowania innym mechanizmem lub wygenerowaną nazwą pliku. ((tar.info)Multi-Volume Archives
natar
stronie informacyjnej). Problemsplit
polega na tym, że musiszcat
zrobić wszystko razem, aby cokolwiek zrobić, podczas gdy archiwum wieloczęściowe powinno być nieco bardziej elastyczne.źródło
Możesz użyć do tego podziału:
To mówi tarowi, aby wysłał dane do standardowego wyjścia i podzielił, aby wybrać je ze standardowego standardu - dodatkowo używając sufiksu numerycznego (
-d
), rozmiaru fragmentu (-b
) 100 M i używając 'tardisk' jako podstawy dla powstałych nazw plików (tardisk00, tardisk01, tardisk02 itp.).Aby później wyodrębnić dane, możesz użyć tego:
źródło
-d
dotyczy sufiksu numerycznego, a nie prefiksu.Oczywiście najlepszą opcją jest
--new-volume-script
opcja.Ale jeśli znasz rozmiar pliku (w tym przypadku duży plik.tgz), możesz to zrobić również:
Podsumowanie:
(Dla -L, podaj tyle, ile potrzeba, aby całkowita suma plików tar była większa niż largefile.tgz)
Jeśli próbujesz
tar
utworzyć strukturę drzewa katalogówźródło
Mam go do pracy z następującymi poleceniami:
Jedynym problemem jest to, że
part_1.tar
tak naprawdę będzie to ostatni plik, a pozostałe zostaną przesunięte o jeden. Czylipart_2.tar
jest rzeczywiście pierwsza część, apart_k.tar
to(n - 1)
th część. Naprawienie tego za pomocą jakiegoś skryptu powłoki jest trywialne i pozostawione jako ćwiczenie dla czytelnika.źródło
automatycznie utworzy pliki o rozmiarze 1,1 GB, jeśli rozmiar tar jest większy, możesz zwiększyć liczbę, na przykład 1000 {2..1000} lub zwiększyć argument wejściowy do długości taśmy.
źródło