タグ付けされた質問 「tar」

UnixおよびLinuxで一般的に使用されるアーカイブファイル形式(およびそれを読み取るプログラム)。

4
巨大なtgzファイルから単一のファイルを抽出する
巨大なtarファイル(約500G)があり、そこから1つのファイルだけを抽出したくありません。 ただし、実行tar -xvf file.tgz path/to/fileすると、コンテンツ全体がまだメモリに読み込まれているように見え、抽出に1時間以上かかります。また--exclude=ignore.txt、ignore.txtがパターンのリストである場所を使用して、無駄なパスの通過を阻止しようとしましたが、うまくいかないようです。 たぶんタールを理解していない...ファイルを素早く抽出する方法はありますか?
19 linux  tar 

3
多くの同様の大きなファイルを圧縮する
圧縮したい類似の大きなファイル(それぞれ30メガバイト)が何百もあります。ファイルのすべてのペアには、99%の同じデータ(1%未満の差)があるため、40〜50メガバイトを超えるアーカイブはないはずです。 単一ファイルは(と13〜15メガバイトに30メガバイトから圧縮することができxz -1、gz -1、bzip2 -1)、2つの以上のファイルを圧縮するとき、私はサイズのアーカイブを持ちたい13-15MB + N*0.3MBNは、ファイルの数です。 使用している場合tar(ソリッドアーカイブを作成する)とxz -6( - 1つのファイルよりも大きくなるように圧縮辞書を定義するアップデート! -これは十分ではなかった)、私はまだサイズのアーカイブを持っていますN*13MB。 辞書は1 MB未満であり、私のtarストリームは30 MBごとに繰り返しているため、両方とも私には役に立たないgzipと思いますbzip2。 標準ツールを使用して現代のLinuxで問題をアーカイブするにはどうすればよいですか? xz高速に圧縮するように調整することは可能ですが、30〜60 MBより大きい辞書を使用しますか? 更新:tar c input_directory | xz --lzma2=dict=128M,mode=fast,mf=hc4 --memory=2G > compressed.tar.xz。の必要性mf=hc4と--memory=2Gオプションについてはわかりません。ただしdict=128M、辞書を十分に大きく(1つのファイルよりも大きく)設定し、mode=fastプロセスを-e。

6
sshとtarを使用して、Linuxルートファイルシステム全体を新しいハードドライブにコピーする方法
Linuxのルートファイルシステム全体を、障害のあるハードドライブから、使用可能な開いたパーティションがある別のコンピューターに転送する必要があります。これにはとが関係しているtarと確信sshしていますが、これを行う方法を正確に思い出すことはできません。 私はおそらく、新しい/ターゲットホストでライブcdを使用して、次のようなものを実行することをイメージングしています。 ssh user@failingharddrivehost "some tar command | piped into something else"
18 linux  bash  ssh  tar  cat 

3
ワイルドカードを使用してtarアーカイブ内の特定のファイルを抽出します
多くの種類のファイルを含むアーカイブからjpeg画像のみを抽出するスクリプトを作成しようとしています。 そうするために、私は使用しようとしました: tar -xf MyTar.tar *.jpg しかし、失敗し(* .jpgが見つかりません)、「-wildcard」を使用することをお勧めします。だから私は試した tar -xf MyTar.tar --wildcard *.jpg 私はそれをしましたが、同じエラーと、オプション「--wildcard」があいまいであるという別の警告が出ました。 私はtarのmanページを見てきましたが、問題についての手がかりが見つかりませんでした。
18 linux  unix  tar 


2
tar -Cとワイルドカードファイルパターン
tarコマンドを使用してディレクトリを変更し、ワイルドカードファイルパターンを使用できますか? これが私がやろうとしていることです: tar -cf example.tar -C /path/to/file *.xml ディレクトリ(-C)を変更しなくても機能しますが、tarファイルの絶対パスを避けようとしています。 tar -cf example.tar /path/to/file/*.xml 私が行った他の試みのいくつかを以下に示します。 tar -cf example.tar -C /path/to/file *.xml tar -cf example.tar -C /path/to/file/ *.xml tar -cf example.tar -C /path/to/file/ ./*.xml tar -cf example.tar -C /path/to/file "*.xml" そして、これは私が得るエラーです: tar: *.xml: Cannot stat: No such file or directory この作業を行う方法は他にもあります(find、xargsなどを使用)が、tarコマンドだけでこれを実行したいと思っていました。 何か案は?
17 linux  tar 


2
標準入力から抽出するときにtarに圧縮タイプを自動検出させます
GNU tarを使用します。ファイルの圧縮/解凍時に圧縮タイプを自動検出できます。しかし、標準入力からアーカイブを解凍する必要があり、圧縮タイプは不明です。tarを使用すると、次のような正しい提案ができることに気付きました。 tar: Archive is compressed. Use -z option しかし、その引数を入力するように要求することなく、tarがその圧縮オプションを自動的に使用するようにします。どうやってやるの?圧縮タイプを既に知っているので、なぜtarは単に解凍しないのですか? ありがとうございました!
16 linux  compression  tar 

5
file.tar.bz2をファイルシステムに抽出せずにマウントする方法はありますか?
file.tar.bz2ファイルシステムに展開せずにマウントする方法はありますか?マウントが読み取り専用かどうかは気にしません。 あなたの答えがにも適用されることを願っていますfile.tar.gz。 このコンテキストでの「マウント」は、ISOファイルをマウントすることに似ています。
15 linux  mount  tar  gzip  bzip2 

3
tarにプレフィックスを追加
私は現在シェルスクリプトで非常に非効率的にしています: cp -a $MYPATH /tmp/$VERSION cd /tmp tar cjf archive.tar.bz2 $VERSION すべてを$ VERSIONというディレクトリに格納する必要があります。上記のスクリプトのようにすべてをコピーせずにこれを実行する方法はありますか?
15 bash  tar 



4
所定の場所にtarアーカイブを抽出します
ここに少しジレンマがあります... 約70 GBのファイルをサーバーの1つから別のサーバーに移動する必要があったため、それらを圧縮してアーカイブを送信するのが最も速い方法であると判断しました。 ただし、受信サーバーには、tarアーカイブを受信した後、5 GBのスペースしか残っていません。 tarを「その場で」抽出できる方法はありますか?アーカイブを抽出した後、アーカイブを保持する必要はないので、これを実行できるかどうか疑問に思っていました。 編集:アーカイブは既に送信されていることに注意する必要があります。別の方法で再送信しないようにしたいと思います。
14 linux  archiving  extract  tar 

7
SVNから直接tar
SVN隠しファイルなしでSVNフォルダーの最新バージョンを直接tarする方法はありますか?SVNファイルなしでtarアーカイブを作成したいと思います。SVN追跡ファイルを使用して最新版を入手できることは知っていますが、情報をアーカイブに直接送信するライナーが1つありますか?
13 svn  tar  gzip  packages 

1
ディレクトリのアクセス許可の復元に失敗したtarのエラーを回避する
tar 1.26と1.27.1の両方で次の動作を観察します。 $ mkdir a b a/diffowner $ sudo mkdir b/diffowner $ sudo chmod a+w b/diffowner $ echo foo > a/diffowner/foo $ tar -C a -cvf test.tar diffowner diffowner/ diffowner/foo $ tar -C b -xvf test.tar diffowner diffowner/ diffowner/foo tar: diffowner: Cannot utime: Operation not permitted tar: diffowner: Cannot change …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.