Nautilusでファイルを右クリックして[圧縮]を選択すると、圧縮形式とファイル名を選択できるダイアログが表示されます。[詳細設定]をクリックすると、ファイルを分割および圧縮するための設定がありますが、非アクティブ化されています。これらの機能を有効にするにはどうすればよいですか?
編集:以下の回答では、rarと関係があることが示唆されています。しかし、私はそれをインストールしていますが、分割するオプションがありません。
Nautilusでファイルを右クリックして[圧縮]を選択すると、圧縮形式とファイル名を選択できるダイアログが表示されます。[詳細設定]をクリックすると、ファイルを分割および圧縮するための設定がありますが、非アクティブ化されています。これらの機能を有効にするにはどうすればよいですか?
編集:以下の回答では、rarと関係があることが示唆されています。しかし、私はそれをインストールしていますが、分割するオプションがありません。
回答:
一部のアーカイブツールのみが分割をサポートします。それらの1つはRAR rar
(パッケージ)(ただし、シェアウェアであり、40日後に購入する必要があります-Ubuntuリポジトリのシェアウェア?(RAR))ともう1つは、たとえば7zipです-パッケージp7zip-full
です。そのうちの1つをインストールする必要があります(7zipは完全に無料なので推奨します)。
また、単一のアーカイブを作成し、split
コマンド(またはGUIの場合はHJSplit)を使用してパーツに分割することもできます。
rar
インストールされていますか?パッケージunrar
とunrar-free
は、RAR解凍サポート専用です。
zip
ファイル については、Wine / Playonlinuxの7-Zipが最も簡単な方法のようです(ここにzip
示すように、特定の目的のためにコマンドを試すことに失敗したため、成功した場合、そのようなコマンドをファイルマネージャーのコンテキストメニューに追加できます) 。上記のように、大きなzipを作成し、それを分割して使用する方法があります(結果のzipファイルは元のアーカイブされていないファイルとして直接抽出できます)が、アーカイブを分割するのは直接的なマルチファイルよりもはるかに遅い手順のようですアーカイブ。hjsplit
分割オプションを有効にするには、ファイル拡張子のドロップダウンボックスから.rarを選択します。
これは主なものに対する補完的な答えです。
メインの回答で既に述べたように、一部のアーカイブツールのみが分割をサポートし、メインGUIはzip
フォーマットでマルチセグメントアーカイブを作成できないようです。代替フォーマット、すなわち、しかし使用することができますrar
と7z
。
また、ここで説明したものなど、一部のツールのみが複数セグメントのzipファイルから抽出できます。その点については、この回答の巻末注を参照してください。
質問は、ファイルマネージャーのコンテキストメニューからアーカイブを処理する問題に具体的に対処するため、zip
ファイルに対しても特定の目的を達成できるいくつかのコマンドを検討しました。コンテキストメニューのエントリ。
zip
ツールを考えると、マルチセグメントアーカイブは次のようなコマンドを使用して直接作成できますがzip my_archive.zip -r <file> -s 20971519
(詳細はこの質問の下にあります)、これらは展開する準備ができていないため、まったく役に立ちません(zip -s 0
大規模な1-ファイル抽出可能アーカイブ- ここで説明されているように)、この制限は回避できません。これを知らない人にそのようなマルチセグメントアーカイブを送信することは無意味です。
メインの回答ですでに示唆されているように、別の方法は、ファイルを圧縮してから、1つのファイルのアーカイブをsplit
(またはhjsplit
GUI)で分割することです。(GUIをテストしましたが、非常に遅いことがわかりましたが、コンテキストメニューの目的にはGUIは必要ありません。)
アイデアは、ファイルマネージャのコンテキストメニューに、ワンクリックでエントリを追加することです。
zip
ファイルとして圧縮します。だから、私はThunarとこれらの3つのコマンドを接続したカスタムアクションでテストしました&&
:
zip -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip
(つまり、1つ以上の選択されたファイルに適用されますが、ディレクトリには適用されません。ディレクトリに適用するには、zip -r
オプションが必要です。
zip -r -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip
)
-j
zip
「パスをジャンク」するためのオプションを表します:アーカイブされるファイルのフルパスを含むターミナルコマンドとは異なり、%F
選択されたファイルに使用するコンテキストメニューコマンドは、フォルダインをアーカイブに追加します-folder構造-j
が使用されていない場合。(ソース:zipを作成-ディレクトリ構造を無視);
my_archive.zip
まだ分割されていないアーカイブのカスタム名です。split
コマンドは、それに適用され、その後、前者はして削除されますrm
%F
として複数のファイルを圧縮するために、Thunarカスタムアクションで使用できますzip
。あるいは、%f
ファイルを1つだけ選択するために使用します。
split.zip
不要な仕様です。これは、最終的なマルチファイルアーカイブのカスタム名であり、のようなものを提供します。これがsplit.zipaa, split.zipab, split.zipac...
ないと、出力に名前が付けられ、x
その後にaa
フラグメントサフィックスが続きxaa, xab, xac...
ます。アルファベットの代わりに数値の接尾辞を使用するsplit
オプションがあります-d
が、エラーが発生します(明らかに、抽出者はStephen Kittによるプライベートチャットで示唆されているように、数値の接尾辞を見つけると標準のZIPマルチセグメントアーカイブを期待するためです;
rm
my_archive.zip
ファイルに適用すると、目的のマルチセグメントアーカイブのみが残ります。
結果のマルチzipアーカイブを抽出するには、LinuxやWindowsの7-Zipのように、セグメント化されたアーカイブをサポートするツールaa
が必要ですfile-roller
。
Vojtech Trefnyが示唆したように、p7zip-fullを使用しても機能しますが、圧縮方法としてrarを選択できませんでした。どちらもunrarしませんでした。ただし、パッケージ「rar」をインストールするとそのオプションが表示され、[詳細設定]を開くと、すべてのオプションが影響を受けます。