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

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


1
3つのフォーマット?どうして?
私は最近、Rubyのソースをダウンロードするために必要な、ここから、それは、ある「3匹のフォーマットで利用できる」と言い.tar.bz2、.tar.gzと.zip。3つの形式すべてが必要な理由はありますか?少なくともLinuxとOSXでは、3つのうちのどれでも簡単にできます。Windowsでは、zipのみが組み込まれています。これらの好みの背後に何かがありますか、またはこれは単なる宗教的な戦いですか?


6
パーツが欠落しているマルチパートrarを抽出する方法は?
私はその中に.rar単一の.tar.gzファイルを含むマルチパートアーカイブを持っています(理由は尋ねないでください、それはまさにそれが作られた方法です)。一部のパーツが欠けていますが、最初のパーツはあります。.tar.gzなるべく多く抽出したい。どうやってやるの? 実行するunrar x -kb file.part1.rarと、常に.tar.gzfrom の先頭が抽出され、part1そこでエラーで停止します。任意のツールを試してみてうれしいです(慣れる必要はありません)。

3
tar:--exclude =“。git”:statできません:そのようなファイルまたはディレクトリはありません
これは私を夢中にさせます。tarディレクトリにしたいが、いくつかのファイルを除外します。これは私のコマンドです: tar -zcvf $NAME-$VERSION.tar.gz $NAME-$VERSION --exclude='.git' --exclude='.gitignore' 上記のコマンドはRedHat EL5では機能しますが、Mac OS 10.8.2では機能しません。私が交換しようとしている'と"、\'と\"。等号を削除してみました。何も動作しません。 私は何を間違えていますか?
11 macos  tar 

1
バックアップの.tar.gzファイル名に日付を入れます
tarウェブサイトのディレクトリをバックアップする簡単なコマンドを実行したいのですが。cronを介して実行されますが、バックアップが作成された時刻をファイル名として入力できるようにしたいです。私はそれがどんなフォーマットであるかを本当に気にしません、しかし漠然と読める何かは良いでしょう。汎用コマンドを探しています。ファイル名に日付を入れる方法-残りのtarの処理を行うことができます。
11 backup  tar  date  filenames 

5
指定した権限でファイルとフォルダーを抽出する
Windowsで7zipを使用して多くのサブフォルダーとファイルを含むフォルダーをパックし、VPSにアップロードして、次のコマンドを実行します。 tar -xvzf file.tar.gz 次に、すべての解凍されたファイルとフォルダーに777のアクセス許可があります。フォルダーに755とファイル644のアクセス許可を付与するには、どうすれば取得できますか?

2
tar -xvfはディレクトリから既存のファイルを削除しますか?
tarアーカイブがあり、使用したいtar -xvf。 このtarアーカイブには、いくつかのファイルを含むディレクトリツリーがあります。私のsolaris 10システムでは、このディレクトリツリーはすでに存在し、その中にいくつかのファイルがあります。 アーカイブを解凍すると、ディレクトリツリー全体が上書きされますか、それともアーカイブに含まれるファイルのみが上書きされますか? 彼のアーカイブに特派員がいないファイルは削除されますか?
10 tar  solaris-10 

1
tar | tarがcpよりもはるかに高速なのはなぜですか?
ディレクトリを再帰的にコピーする場合、を使用tarしてディレクトリをパックし、出力を別のディレクトリにパイプしtarて解凍すると、cp -r(またはcp -a)を使用するよりもはるかに高速に見えます。 どうしてこれなの?そしてcp、内部で同じようにそれを行うことによってなぜより速くすることができないのですか? 編集:何万ものファイルとフォルダーを含む巨大なディレクトリ構造をコピーしようとしたときに、この違いに気づきました。深くネストされていますが、合計は約50MBです。それが関連しているかどうかはわかりません。
10 tar  cp 

2
.tgzファイル– tar:認識されないアーカイブ形式
Mountain Lion(10.8.3)を実行しているローカルMac にMongoDBの10genビルドをインストールしようとしています。 私はそれを次のようにフェッチcurlします: curl http://downloads.mongodb.org/osx/mongodb-osx-x86_64-2.4.tgz > mongodb.tgz しかし、私はビルドを抽出できません: 試行1: $ tar -zxvf mongodb.tgz tar: Unrecognized archive format tar: Error exit delayed from previous errors. 試み2: $ gunzip mongodb.tgz gzip: mongodb.tgz: not in gzip format 試行3: $ unzip mongodb.tgz Archive: mongodb.tgz End-of-central-directory signature not found. Either this file is not …

1
tarアーカイブからいくつかのメンバーを抽出し、ネットワークを介してパイプする
編集:私は追加member01したいmember02とディレクトリblah/ tarball_1.tar.gztest/20ファイルのディレクトリが含まれています。メンバーtest/member01とtest/member02ディレクトリのみを抽出blah/し、ssh / scpを使用して別の「remote_host」にコピーしたい。 これはワンライナーとして実行できますか?、、またはの使用を検討しましたがtar、これらのユーティリティにはまだ熟練していないようです。paxcpio
9 tar  pipe  cpio 

2
tarしたファイルをサブディレクトリに置く
次のようなディレクトリ設定があります。 folder_x file.y file.z tarファイルを作成して、構造が抽出されると次のようになるようにしたいと思います。 dir_q/folder_x dir_q/file.y dir_q/file.z これを使用してどのように機能させることができtarますか?参考までに、現在使用しているコマンドは次のとおりです。 tar -czf archive.tar.gz file.y file.z folder_x
8 archiving  tar 

2
Tarアーカイブは解凍されません–「パスには '..'が含まれています」
ファイルの名前2014-12-12 04-00-01.tar。私はコマンドを実行しました: tar xvf 2014-12-12\ 04-00-01.tar 出力は次の形式の行です。 x ../server/: Path contains '..' そして、フォームのいくつか: tar: copyfile unpack (../server/logs/.DS_Store) failed: No such file or directory バックアップスクリプトを作成するときは、あまり注意していないようです。ファイルを解凍するにはどうすればよいですか?

3
すべてのファイルが圧縮されていない理由とソリューションの改善方法
約20Kファイルのフォルダがあります。ファイルは、パターンに従って命名されているxy_{\d1,5}_{\d4}\.abc、例えばxy_12345_1234.abc。次のコマンドを使用して、最初の10Kを圧縮したいと思います。 ls | sort -n -k1.4,1.9 | head -n10000 | xargs tar -czf xy_0_10000.tar.gz ただし、結果のファイルには約2Kのファイルしかありませんでした。 ls | sort -n -k1.4,1.9 | head -n10000 | wc -l ただし、期待どおりに10000を返します。 ここで基本的なことを誤解しているようです... Linux Mint 17.1、GNU tar 1.27.1でzsh 5.0.2を使用しています 編集: @Archemarによって提案されたフォークは非常にもっともらしいように聞こえ、最新のフォークが結果のファイルを上書きします-ファイルにはファイルの「テール」が含まれています-7773から9999。 の結果xargs --show-limit: Your environment variables take up 3973 bytes POSIX upper limit on argument …
8 linux  shell  zsh  tar  pipe 

3
接続されていない2つのサーバー間でファイルをバウンスするrsyncハック
接続は次のとおりです。 [Server1] <---> [my desktop] <---> [Server2] Server1とserver2は互いに直接対話することはできません(質問しないでください)。しかし、私のデスクトップはssh経由で両方のサーバーにアクセスできます。 server1からserver2にファイルをコピーする必要があります。 伝統的に私はssh + tarハックを次のように使用しています: ssh -q root@Server1 'tar -vzc /path/to/files ' | ssh -q root@Server2 'tar -vzx -C /' そして、それはうまくいきますが、私はそれをさらに一歩進めて、私のデスクトップを介して2つのサーバー間でrsyncを動作させたいと思います。 ある端末でsshポートフォワードトンネルを開始してから、別のウィンドウでそのトンネルを介してrsyncを実行できることはわかっていますが、2番目の端末をいじったり、別のポートフォワードトンネルを作ったり壊したりしたくありません。私が欲しいのは: デスクトップを介してServer1からserver2にファイルをrsyncする1つのライナーコマンド すべて1つのコマンドライン、1つのターミナルウィンドウ ポートフォワードトンネルをrsyncコマンドの存続期間のみ存在させたい。 scpしたくない、rsyncしたい。 誰かがそれをするためのトリックを持っていますか? 編集:これが作業コマンドです!皆さん、素晴らしい仕事です。1. rsaキーパスには、チルダを使用できません。「/ root /」を使用する必要がありました。2.これが最後のコマンドラインです。 ssh -R 2200:SERVER2:22 root@SERVER1 "rsync -e 'ssh -p 2200 -i /root/.ssh/id_rsa_ROOT_ON_SERVER2' --stats …
8 linux  boot  rsync  tar 

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