問題タブ [tar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
565 参照

perl - PerlのArchive::Tarを使用すると、tarballディレクトリ構造が消えるのはなぜですか?

Perlスクリプトを使用して.tar内のいくつかのファイルを変更すると、結果の.tar内のディレクトリ構造が消えます。これを再現するために必要なのは、私がやってきたコードをどんどん排除することです。

両方の.tarファイルにはすべてのファイルが含まれていますが、ファイルとサブディレクトリがどのディレクトリにあるかは示されません。

Archive :: Tarのドキュメントとsrcを調べましたが、何が起こっているのか本当にわかりません。

私はwin32、tar 1.12、Archive ::Tar1.54でperl5.10.0を使用しています。エディターで.tarファイルを調べたところ、data.tarにはdir/とdir/ file.txtが含まれていますが、modified_data.tarではdirとfile.txtとして表示されるため、元のtarは問題ないようです。

これを以前に見たことがある人、または何かアイデアがある人はいますか?

0 投票する
4 に答える
7037 参照

windows - tar/gzip を Windows コマンド ラインに追加する

タイトルが示すように、tar/gzip を Windows のコマンド ラインに追加する方法を知っている人はいますか? Cygwin をインストールしましたが、tar を cmd オプションとして取得するために PATH 環境変数に何かを追加する必要があるかどうかわかりません

0 投票する
5 に答える
11949 参照

c - メモリ内のファイルを untar する方法 (c プログラミング)?

私が実現しようとしていることを説明しましょう:

暗号化された tar ファイルがあります。メモリ内で復号化できますが、明らかに、復号化されたデータを実際のファイルとしてハードディスクに書き戻すことはできません。復号化されたデータは、メモリ内で char* バッファとして構造化されます。どうすればメモリ内で展開できますか?

libtar ライブラリで答えが見つかりません。私もそれを解凍しようとしましたexeclp("tar", "tar", "-xvO", (void*)0)。でも思ったようにはいきませんでした。

誰でも最善の解決策のヒントを教えてもらえますか? ありがとう!

0 投票する
3 に答える
751 参照

bash - ディレクトリ ツリー ファイルをファイルごとにコピーする

私のアドバイザーは、多くのソフトウェアを自分の /usr/local にコンパイルしてから、/usr/local を tarball として配布します。次に、使用するために、tarball をラボ マシンに抽出します。これまでのところ、これは問題なく機能していました。古い /usr/local を tarball の内容に置き換えるだけです。

しかし、これらのマシンに独自のソフトウェアをインストールし始めました。/usr/local を削除すると、明らかにそのソフトウェアと構成の一部も削除されます。

代わりに、どうすれば tarball から /usr/local の対応するディレクトリにファイルを再帰的にコピーできますか?

例えば:

または、これは ServerFault のより良い質問ですか?

0 投票する
1 に答える
1242 参照

linux - このスクリプトからアーカイブを抽出する方法(tarを使用)

作成したアーカイブを解凍する方法がまったくわかりません。完全なスクリプトを提供します。Univentionという名前のDebianベースのディストリビューションは、これを使用してtarアーカイブ内のいくつかのファイルをバックアップします。

実際のアーカイブは関数にパックされています。実際のtarファイルを作成する主なコンテンツは次のとおりです。

アーカイブはシステム上で54GBであり、tarxvfはアーカイブの最初のレベルのみを抽出します。説明するのは難しいです。全体として、私はこの54GBから40MBしか得られません。アーカイブにあるはずのすべてのDirが抽出されるわけではありません。

$((tar ... tar ...)| dd> foo)の使用

また、私にはまったくわかりませんが、このスクリプトは何をしますか?

私は自分で解決策を見つけたと思います(スクリプトを少し更新しました):スクリプトは最初のアーカイブの終わりを示すタグを生成します。grep -A1 -a -b"HEADER_ENDTAG"backup.tarを使用しました。値は41247795ddskip = 41247795 if = .. / .. / backup of = test

「実際の」アーカイブを抽出できるようになりました。grepを手動で使用せずに、このバイトオフセットに自動的にジャンプする別の方法はありますか?

0 投票する
5 に答える
1794 参照

perl - ファイル パスを保持しながら、Win32 で Perl を使用して一連のファイルをアーカイブするにはどうすればよいですか?

問題が見つかりました。 ただし、他の人が私が遭遇した同じ問題に遭遇した場合に備えて、ここで質問を残しています.

WinZip 11 でバグまたは奇妙な機能に遭遇したようです。test2.zip ファイルをダブルクリックしてその内容を表示すると、WinZip はデータ ファイルへのパスが小文字の「allcapsname」であると表示しますが、WinZip が抽出するとアーカイブ (右クリックの [Extract to here] メニューから) を実行すると、実際には「ALLCAPSNAME」ディレクトリが適切に作成されます。Archive::Zip で発生していると思われる問題について不平を言っていましたが、それはずっと WinZip の問題でした。何が間違っていたのかを理解するのを手伝ってくれたすべての人に感謝します。

Archive::Tar の使用中に WinZip ファイルに表示されるパスを取得するには、コードに次の行が必要であり、Archive::Tar を厳密な POSIX 準拠から逸脱させる必要があります: $Archive::Tar::DO_NOT_USE_PREFIX = 1 ;

元の質問: これまでに、Perl スクリプト内から ZIP、GZIP、TAR、または TGZ アーカイブ ファイルを作成できるように見えるさまざまな Perl モジュールをいくつか見つけましたが、実際にはそれらのいずれからも完全に成功したわけではありません。 . なぜこれが難しいのですか?Windowsマシンを使用しているからですか?(これまでのところ、この一見単純なタスクに約 4 時間を無駄にしており、本当にイライラしています。)

Archive::Tarを試したところ、アーカイブ ファイルの作成に成功しましたが、何らかの理由で tarball に含まれるファイルへのパスを取得できませんでした。私は自分のコードでさまざまなことを試しましたが、tarball には常に空のパスを持つファイルが表示されていました。(WinZip を使用して tarball を見ています。)

Archive::Zipを試したところ、より多くの成功が得られ、アーカイブ ファイルに含まれるファイルへの実際のディレクトリ パスを取得できました。唯一の問題は、ファイルへのパスが途中で大文字から小文字に変更されたことです。ディレクトリの大文字と小文字が変更されたのはなぜですか? 実際のディレクトリ名をそのままにしておきたい。

成功せずに他のいくつかのモジュールを試しました。Archive::Builderからサンプル コードを取得してコンパイルすること さえできません。

元の質問の補遺:

Archive::Zip と Archive::Tar に関して上記で説明した 2 つの問題を明確に示す最小限の実行可能スクリプトを作成することができました。

このスクリプトは 3 つのアーカイブを作成します。最初のアーカイブには、「MyArchiveFiles\」という適切なパスを持つデータ ファイルが含まれています。ディレクトリ名がすべて大文字の場合に問題が発生します。2 番目のアーカイブにはデータ ファイルが含まれていますが、アーカイブ ファイル内のパスは予想どおり「ALLCAPSNAME\」ではなく、「allcapsname\」です。これは私にとって問題です。なぜそれは私のパスのケースを変更したのですか?どうすればそれをそのままにしておくことができますか?

3 番目のアーカイブにはデータ ファイルが含まれていますが、そのファイルの空のパスが含まれています。これは私にとって問題です。アーカイブを解凍すると、ファイルが適切なディレクトリ構造に抽出されるように、パスがアーカイブにある必要があります。

0 投票する
2 に答える
1196 参照

netbeans - jarファイル、Netbeans、antからtarファイルを作成する方法

こんにちは私はnetbeans6.7.1を持っています。私のbuild.xmlファイルはjarファイルを作成します。今、私はjarファイルとtarファイルの両方が必要です。tarファイルはjarファイルから作成する必要があります。それで、build.xmlにいくつかの変更を加えて、jarファイルからtarファイルを作成する方法。antを使ってjarファイルを作成していると思います。

ありがとうSunilKumarSahoo

0 投票する
6 に答える
20201 参照

unix - 指定された数のファイルのtarを作成するUnixコマンド

ディレクトリから10個のファイルのtarを作成するUnixコマンドを探しています。

0 投票する
4 に答える
10424 参照

python - データがファイルなしで有効な tar ファイルであるかどうかを判断する方法は?

私のアップロード フォームは tar ファイルを想定しており、アップロードされたデータが有効かどうかを確認したいと考えています。tarfileモジュールは をサポートしていis_tarfile()ますが、ファイル名が必要です。ファイルが有効かどうかを確認するためだけに、ファイルをディスクに書き込んでリソースを浪費したくありません。

標準の Python ライブラリを使用して、ディスクに書き込むことなく、データが有効な tar ファイルであることを確認する方法はありますか?

0 投票する
3 に答える
6576 参照

iphone - iPhoneの「untar」ファイル

Web サーバーから tar-gzip ファイルをダウンロードする iPhone アプリを作成しています。このファイルを解凍して、アプリの Documents フォルダーにコピーできるようにする必要があります。

私は tar/gzip を使用しています。これは、1 つの HTTP 要求で大量の小さなファイルをダウンロードして、すべてを高速に処理したいからです。

http://www.feep.net/libtar/のようなソリューションを調査しましたが、C/Objective-C の初心者として、iPhone プラットフォーム用にコンパイルするものはありません。

(「tar -zxvf myfile.tar.gz」へのシステム コールを実行できればよいような気がしましたが、それほど簡単ではないようです!)

では、iPhone でファイルの tar を解凍する簡単な方法はありますか? それとも、私はこれについてすべて間違っていますか?これを行うより良い方法はありますか?

前もって感謝します!

ニック