Kompresuj i dziel pliki w eksploratorze plików


25

Jeśli klikniesz prawym przyciskiem myszy plik w Nautilus i wybierzesz Kompresuj, pojawi się okno dialogowe, w którym możesz wybrać format kompresji i nazwę pliku. Jeśli klikniesz Zaawansowane, dostępne są ustawienia podziału i kompresji pliku, ale jest on dezaktywowany / niewrażliwy. Jak to możliwe i jak aktywować te funkcje?

Edycja: W odpowiedzi poniżej sugerowano, że ma to coś wspólnego z rar. Ale mam to zainstalowane i nie mam opcji podziału.


Gdzie jest „kompres”, czy usunęli tę funkcję?

Nie. Tuż nad właściwościami.
Jo-Erlend Schinstad

Odpowiedzi:


18

Tylko niektóre narzędzia do archiwizacji obsługują dzielenie. Jednym z nich jest pakiet RAR rar(ale jest to shareware i musisz go kupić po 40 dniach - Shareware w repozytoriach Ubuntu? (RAR) ), a drugi to na przykład pakiet 7zip p7zip-full. Musisz zainstalować jeden z nich (sugeruję 7zip, ponieważ jest całkowicie darmowy).

Możesz również utworzyć archiwum sigle, a następnie podzielić je na części za pomocą splitpolecenia (lub HJSplit dla GUI).


2
kiedy zainstalowałem p7zip, mogłem podzielić plik, jeśli wybiorę 7z. Jeśli zainstaluję p7zip-full, mogę również zabezpieczyć go hasłem. W związku z tym moje pytanie jest w pewnym sensie rozwiązane. Ale nadal nie mogę wybrać rar.
Jo-Erlend Schinstad,

A czy masz rarzainstalowany pakiet ? Pakiety unrari unrar-freesą przeznaczone wyłącznie do obsługi dekompresji RAR.
Vojtech Trefny,

Jeśli chodzi o wiele zipplików, 7-Zip w Wine / Playonlinux wydaje się najłatwiejszym sposobem (ponieważ nie udało mi się wypróbować zippolecenia dla podanego celu, jak wskazano tutaj ; takie polecenie, jeśli się powiedzie, może być następnie dodane do menu kontekstowego menedżera plików) . Utworzenie dużego pliku zip, a następnie hjsplitpodzielenie go, jak wskazano powyżej, jest dobrym rozwiązaniem (wynikowe pliki zip można wyodrębnić bezpośrednio jako oryginalny plik niezarchiwizowany), ale dzielenie archiwum wydaje się znacznie wolniejsze niż bezpośrednie tworzenie wielu plików archiwizacja

Patrząc na zippliki w tym kontekście, wydaje się, że zipmożna użyć tego polecenia do tworzenia wielotomowych archiwów zip, tyle że wyniki nie są bardzo przydatne, ponieważ archiwum zip z wieloma plikami nie może być wyodrębnione bezpośrednio, ale musi być skomponowane jako jeden plik za pomocą drugiego polecenia przed rozpakowaniem: więcej tutaj i tutaj . Zalecane jest utworzenie jednego archiwum, a następnie podzielenie go split.

8

Aby aktywować opcję podziału, wybierz .rar z rozwijanego menu rozszerzenia pliku.

wprowadź opis zdjęcia tutaj


4
Nie mogę wybrać rar, mimo że mam zainstalowanego unrar.
Jo-Erlend Schinstad

2
@ Jo-ErlendSchinstad musisz najpierw zainstalować rar: apt-get install rar. Mam nadzieję, że ten późny komentarz może pomóc innym.
Fernando Kosh

Wybieranie 7zrównież działało dla mnie.

1

Spróbuj wymienić rar na unrar-free lub na odwrót.

Można to zrobić po prostu

sudo apt-get install rar unrar-free

To nie pozwala tworzyć plików rar ... tylko je rozpakowywać.
Cerin

Jak powiedział w komentarzu Fernando Kosha, rarjest również potrzebny; sudo apt-get install rar. Wybieranie 7zrównież działało dla mnie.

1

Biorąc pod uwagę szczególny przypadek wielosegmentowych plików ZIP ,

jest to odpowiedź uzupełniająca do głównej .

Jak już stwierdzono w głównej odpowiedzi, tylko niektóre narzędzia do archiwizacji obsługują dzielenie, a główny GUI nie wydaje się być w stanie tworzyć archiwów wielosegmentowych w zipformacie. Można jednak użyć alternatywnych formatów, a mianowicie rari 7z.

Ponadto tylko niektóre narzędzia mogą wyodrębnić pliki zip z wielu segmentów, takie jak te omówione tutaj: na ten temat patrz uwaga końcowa do tej odpowiedzi.

Ponieważ pytanie dotyczy konkretnie problemu z archiwizacją z menu kontekstowego menedżera plików , przyjrzałem się niektórym poleceniom, które mogłyby osiągnąć określony cel nawet dla zipplików: takie polecenia, jeśli się powiedzie, można łatwo dodać do menedżera plików jako pozycje menu kontekstowego.

Biorąc pod uwagę zipnarzędzie, archiwa wielosegmentowe można tworzyć bezpośrednio za pomocą polecenia typu zip my_archive.zip -r <file> -s 20971519(więcej szczegółów w tym pytaniu ), ale nie są one w ogóle przydatne, ponieważ nie są gotowe do rozpakowania (potrzebne jest dodatkowe zip -s 0polecenie, aby utworzyć duże 1- plik archiwum do wyodrębnienia - jak opisano tutaj ) i tego ograniczenia nie można uniknąć. Wysłanie takiego wielosegmentowego archiwum do kogoś, kto nie wie, że to nie ma sensu.

Jak już zasugerowano w głównej odpowiedzi, innym sposobem jest skompresowanie pliku, a następnie podzielenie archiwum jednego pliku za pomocąsplit (lub hjsplitGUI). (Przetestowałem GUI i stwierdziłem, że jest on bardzo wolny, natomiast do celów menu kontekstowego GUI nie jest potrzebny).

Chodzi o to, aby dodać do menu kontekstowego menedżera plików pozycję, która wystarczy jednym kliknięciem

  1. kompresuj wybrane pliki jako pojedynczy zipplik,
  2. podzielić plik zip na części o określonym maksymalnym rozmiarze i
  3. usuń go, aby zachować tylko archiwum z wieloma plikami.

Testowałem więc z Thunarem i niestandardową akcją z tymi trzema poleceniami połączonymi przez &&:

zip -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip

(Należy to zastosować do jednego lub więcej wybranych plików, ale nie do katalogów; aby zastosować do katalogów, zip -rpotrzebna jest opcja:

 zip -r -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip

)

  • -joznacza opcję zip„śmieciowej ścieżki”: w przeciwieństwie do komendy terminalowej zawierającej pełną ścieżkę plików, które mają być zarchiwizowane, polecenie menu kontekstowego używane %Fdla wybranych plików dodałoby do archiwum folder-in -folder struktura, o ile nie -jjest używana; (źródło: twórz zip - ignoruj ​​strukturę katalogów );

  • my_archive.zipto nazwa niestandardowa niepodzielonego jeszcze archiwum; splitpolecenie zostanie przyłożona do niego, a następnie były zostanie usuniętyrm

  • %Fmoże być użyty w niestandardowej akcji Thunar w celu skompresowania wielu plików jako zip; alternatywnie, %fnależy użyć do wyboru tylko jednego pliku;

  • -b 20moznacza rozmiar oddzielnych części archiwum utworzonych przez, splitjak wskazano tutaj ;

  • split.zipjest specyfikacją, która nie jest potrzebna; jest to niestandardowa nazwa ostatecznego archiwum wieloplikowego, dałaby coś takiego split.zipaa, split.zipab, split.zipac..., a bez niej dane wyjściowe zostaną nazwane xpo aasufiksach fragmentów: xaa, xab, xac...itd .; istnieje splitopcja -dużycia sufiksów numerycznych zamiast alfabetycznych, ale daje to błąd (ponieważ najwyraźniej ekstraktor oczekuje standardowego wielosegmentowego archiwum ZIP, gdy zobaczy sufiks numeryczny - jak sugeruje prywatny czat Stephen Kitt ;

  • rmzastosowane do my_archive.zippliku pozostawi nam tylko żądane archiwum wielosegmentowe.


Uwaga:

Aby wyodrębnić powstałe archiwum z wieloma plikami zip, potrzebne jest narzędzie obsługujące aaarchiwa segmentetd , tak jak file-rollerw systemie Linux i 7-Zip w systemie Windows.


-1

Korzystanie z p7zip-full, jak sugerował Vojtech Trefny, działa, ale nie pozwoliło mi wybrać rar jako metody kompresji. Żaden nie był nietypowy. Jednak zainstalowanie pakietu „rar” zawiera tę opcję, a jeśli otworzysz Zaawansowane, wszystkie opcje są wrażliwe.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.