web-dev-qa-db-ja.com

複数のアーカイブタイプにわたって一貫したインターフェースを提供するプログラムはありますか?

現時点では、圧縮ファイルをダウンロードすると、.tar.gzアーカイブ、tar.bz2アーカイブ、.Zipアーカイブ、または.gzアーカイブのいずれかになります。そして、そうするたびに、そのプログラムのコマンドラインオプションが何であるかを覚えておく必要があります。

私が行くことができるCLIプログラムはありますか?

圧縮解除somefile。??

アーカイブがどのような形式であるかを把握させますか? (実際のプログラムとの競合を避けるために使用される過度に長い名前)

13
Macha

p7Zip を使用できます。アーカイブタイプを自動的に識別し、解凍します。

p7Zipは、Unix/Linux用の 7-Zip のコマンドラインバージョンであり、独立した開発者によって作成されています。

7z e <file_name>

11
Hemant

この小さなスニペットを少し前に見つけて以来、使用しています。 .bashrcファイルにあります

extract () {
if [ -f $1 ] ; then
    case $1 in
        *.tar.bz2)  tar xjf $1      ;;
        *.tar.gz)   tar xzf $1      ;;
        *.bz2)      bunzip2 $1      ;;
        *.rar)      rar x $1        ;;
        *.gz)       gunzip $1       ;;
        *.tar)      tar xf $1       ;;
        *.tbz2)     tar xjf $1      ;;
        *.tgz)      tar xzf $1      ;;
        *.Zip)      unzip $1        ;;
        *.Z)        uncompress $1   ;;
        *)          echo "'$1' cannot be extracted via extract()" ;;
    esac
else
    echo "'$1' is not a valid file"
fi
}
5
Dason

From 別の質問atool これは、さまざまなアーカイブタイプも処理し、コンテンツの一覧表示、アーカイブ間の違いの検索なども処理するため、unpよりも強力です。 。

2
Thomas Themel

Debian/Ubuntuには、unpパッケージがあります。これは、多くのアーカイブユーティリティのフロントエンドとして機能するPerlスクリプトです。

2
JanC

GNU tar(およびstar)には、少なくともいくつかの圧縮自動検出機能があります。

tar xf foo.tar.gz
tar xf foo.tar.bz

ただ働く。

1
maxschlepzig

arkKDEアーカイブツールはGUIなしで実行できると思います。 arkのマンページから

ark --batch archive.tar.bz2

GUIを表示せずにarchive.tar.bz2を現在のディレクトリに抽出します。

さまざまなアーカイブ形式のArksサポートは、インストールしたアプリによって異なります(たとえば、rarの場合はunrarに依存します)が、処理できない形式はわかりません。

1
xenoterracide

この回答 で提案された dtrx ツールについて誰も言及していないことに驚いています。

リクエストをTシャツに合わせるようです。

1
HighCommander4

narchiver 一貫したインターフェースで約50の異なるフォーマットの抽出をサポートします。

デフォルトでは、最上位のファイルまたはフォルダーが複数ある場合、ディレクトリーが作成されます。

そのman-ページを表示

コマンドラインバージョンはLinuxをサポートしており、利用可能です ここ

0
Tom Hale