• ベストアンサー

圧縮に成功しているか?

tar cvzf で大量のデータを圧縮したのですが、 解凍コマンドを実行せずに、 圧縮に成功しているかは、どのようにして調べるのでしょうか? また、バックグラウンドでの実行は、 tar cvzf after.tar.gz befor & で有っていますでしょうか?(実行しても、echoされるんです;_;) OSはFreeBSDです。

質問者が選んだベストアンサー

  • ベストアンサー
  • baber
  • ベストアンサー率18% (17/92)
回答No.3

実際には解答する方法なのですが、私ならば以下で確認します。 gzip -dc after.tar.gz | tar tvf - これが成功すれば圧縮が成功してると思いますよ。 失敗していれば途中でエラーになりますので。

takatokoko
質問者

お礼

ご回答ありがとう御座います。 勉強になります。

その他の回答 (3)

  • heiwa4126
  • ベストアンサー率69% (9/13)
回答No.4

> 解凍コマンドを実行せずに、圧縮に成功しているかは、 > どのようにして調べるのでしょうか? fileコマンドを使うのははどうですか? gzipとかbzip2とか言われれば圧縮されてます。 例) file foo.ta.gz >バックグラウンドでの実行は、 > tar cvzf after.tar.gz befor & > で有っていますでしょうか?(実行しても、echoされるんです;_;) とりあえずvオプションをはずしてみるのはどうでしょうか 例) tar czf after.tar.gz befor &

takatokoko
質問者

お礼

ご回答ありがとう御座います。 勉強になります。

回答No.2

「-t」オプションで圧縮されているファイルのリストを見れますが、そういうことではない?

takatokoko
質問者

お礼

ご回答ありがとう御座います。 勉強になります。

noname#150436
noname#150436
回答No.1

圧縮されてれば元ファイルより容量が小さくなっているはずですが また、アイコンも変わります。

takatokoko
質問者

お礼

ご回答ありがとう御座います。

関連するQ&A

  • /から圧縮したい

    ソラリスが動いているサーバーのデータのバックアップをしようと思っています。 テープデバイス以外の方法をご存知でしたら 教えていただきたいんです。 今やろうとしているのが tar.gzへの圧縮なんですが まとめて圧縮できないかと悩んでおります。 全データを一つにまとめて圧縮なんてできるんでしょうか? コマンドだとファイル名をbackup.tar.gzにするとして tar cvfz backup.tar.gz /  になるのですか?? よろしくお願いします。

  • tar.gz圧縮のファイルサイズについて

    レンタルサーバCPIにて、 公開ディレクトのWebデータを圧縮してバックアップをとりたいと思い、 tar.gz圧縮のスクリプトを書いてcronで自動実行(1日1回)させています。 生成されたデータをみると、 公開ディレクトリのファイル数やフォルダ数は同じにも関わらず、 tar.gzの圧縮ファイルのファイルサイズが毎回異なっているのですがこれはtar.gzの仕様でしょうか? コマンドは下記となります。 tar -czf /usr/home/*****/webdata.tar.gz /usr/home/*****/html/; お分かりの方、ご教示頂ければと思います。 どうぞよろしくお願いいたします。

  • cronからtarで圧縮しようとすると、途中で終わってしまいます

    サーバーはCentOS 5.3です。 以下はroot権限での話です。 コマンドラインで /bin/tar cvzf /home/myhome/backup/var_backup.tar.gz /var と打ち、実行すると正しく圧縮されたファイルが出来上がります。 解凍してみても問題ありません。 大きさは700MBくらいになります。 ところが同じコマンドをCronにセットして実行すると、ファイルはできるのですが 254K というとても小さなファイルが出来上がって終わってしまいます。 解凍してみるととても中途半端なところで圧縮が終わっているみたいです。 5 0 * * * /bin/tar cvzf /home/myhome/backup/var_backup.tar.gz /var のように書いています。 rootのcrontabなので権限の問題ということも無いと思うのですが。 別のディレクトリでも試してみたのですが同じ結果でした。 別のサーバーで同じくCentOS5.3を使っていて、同じことをやっているのですが そちらはうまく行っているのです。 どなたか解決策などご存知でしたら教えてください。 同じような質問が過去にもあったようなのですが、未解決で終わっていました。

  • tarで圧縮したファイルの解凍時の保存先指定

    こんにちは、tarについてご教授ください。 tar czvf /home/hoge/test.tar.gz /home/hoge/testdir ↑の様に圧縮したとします。 これを同じ場所に解凍したいのです。 /home/hoge/test.tar.gz を /home/hoge/ のディレクトリの中から下記の様に解凍します。 tar zxvf /home/hoge/test.tar.gz すると、/home/hoge/home/hoge/testdir/ に解凍されてしまいます。 試しに tar zxvf /home/hoge/test.tar.gz / と言う感じに指定できたら、問題解決なんですが・・・これはできませんでした。 /に移動してからコマンドを発行ということも訳あってできません。 というのもPHPのプログラム上からsystemコマンドで圧縮と解凍をしているのですが、 解凍すると、PHPがあるディレクトリからの相対パスに解凍されてしまいます。 指定した場所に解凍するということはできませんでしょうか? tar --help でみてみたのですが、それらしきオプションは探せませんでした。 zipはまだ使ったことありませんが、こちらを使った方がサーバーへの負荷や扱いやすさでは上なのでしょうか? ご教授お願い致します。

  • ◆圧縮&伸張コマンド

    いつもお世話になっています。 Linux初心者です。 Linuxコマンドでの圧縮系はtar + gzipが一般的なのでしょうか? (他に手軽&圧縮率が高いのがあればご教授下さい) 【実行したい事】 定期的に動いているcronがあります。wgetで取得したファイル群(フォルダ含め)を取得後に圧縮をかけたい。で、次回のwgetをかける前に今度はファイル群(フォルダ含め)を元に戻したい。 cron ⇒ 伸張&展開(ファイル群) ⇒ wget ⇒ 圧縮(ファイル群。元ファイル群は削除) ⇒ cron お手数ですが、解凍 & 圧縮のサンプルコマンドをご教授下さるとありがたいです。 ↓↓↓こんな感じで問題ないのでしょうか? 伸張&展開: tar xvzf ***.tar.gz 圧縮&アーカイブファイル:tar cvzf ***.tar.gz dir(各フォルダ&ファイル群) wgetで-nc(取得済みは取らない)を使用しているので、ちゃんと元に戻って欲しい(当たり前ですが。。。)のとファイル群の容量が大きいので手軽に圧縮させたい。

  • tarコマンドの圧縮

    こんにちは。 3ファイルある、ディレクトリ(test)を、tarコマンドでまとめて、 gzipコマンドにて圧縮しました。 そのあと、gzcatコマンドにて、展開して結果をファイルに おとして見たところ、余計なものが付加されます。 見たところ、ディレクトリ名が付加されている感じに、なっており、 出さないようにする方法があれば、教えてください。 【構成】 OS:HP-UX  ディレクトリ:test ファイル:test1(中身は,yuuuuuu 1行のみ) test2(中身は,xxxxxxx 1行のみ) test3(中身は,zzzzzzz 1行のみ) 【圧縮】  1・tarコマンド (tar cvf test.tar test/) 2.gzipコマンド(gzip test.tar) 【解凍】  1.gzcatコマンド(gzcat test.tar.gz > list) 【結果】 1.catコマンド(cat list) test/0040750000000000000000000104357767601770ustar00rootsys0000test/test1000644100000000000000013104364453400126510ustar00rootsys00000000000yuuuuuu test/test200644000000013104364453400126510ustar00rootsys000000000xxxxxxx test/test300644000000013104364453400126510ustar00rootsys000000000zzzzzzz

  • Rubyを使っての tar.gz ファイルの解凍

    いつも、お世話になります。 今現在、cygwin環境下で、tar.gzファイルを解凍しています。 コマンドとしては、 gunzip -d xxxx.tar.gz tar -xvf xxxx.tar これを、Rubyを使って、やりたいと考えています。 方法は、あるのでしょうか? 元々、UNIX環境下で作成されたデータを、PC上のcygwinで解凍、ついでに テキスト処理(shellscript+perl)も実施しております。 gzファイル、tarを解くexeは、きっとどこかにあると思いますので、 rubyに期待するのは、外部コマンドとしての exeを実行できることです。 宜しく、サジェスチョンをお願いいたします。

  • tar -zcvfコマンドでの圧縮について

    MRTGデータをバックアップするサーバの移行(サーバB→C)をしていますが、 MRTGデータを取得して圧縮した時の容量の差を疑問に思っています。 なぜか2倍になってしまいます。 解凍するとデータは同じ容量です、 データを取得するShellはまったく同じものを使用していますし、 取得するデータの内容も変わらないと思います。 データ圧縮の差はOSの差、tar,gzipパッケージの差、ハードの差? 何が原因なのでしょうか? 勉強不足で申し訳ありませんが、教えて頂けたら幸いです。 よろしくお願いします。 MRTGサーバAのデータをサーバBでバックアップすると約50MB(tar.gzで固める)⇒解凍すると約200MB MRTGサーバAのデータをサーバCでバックアップすると約100MB(tar.gzで固める))⇒解凍すると約200MB サーバ情報 サーバA MRTGツールにてデータ取得 Red Hat Enterprise5.3 サーバB MRTGデータバックサーバ SunOS 5.10 サーバC MRTGデータバックサーバ SunOS 5.9 

  • bashスクリプト

    bashスクリプト #!/bin/bash if [ -f *.log ]; then  echo `tar czf $(date +"%Y_%m_%d").tar.gz *.log` fi このようなスクリプトでecho ``(バックオート)でコマンドを実行できると思うんですが, tar czf $(date +"%Y_%m_%d").tar.gz *.log←これ自体を表示できないでしょうか? いまは,以下のようにしてコマンドを実行させ,さらに表示させています. これだとあまり賢くないというか,1行でスマートに表示させたいのですが, 可能でしょうか? if [ -f *.log ]; then  echo "tar czf $(date +"%Y_%m_%d").tar.gz *.log"  echo `tar czf $(date +"%Y_%m_%d").tar.gz *.log` fi

  • linux シェルの変数、引数の指定について教えて

    シェルの勉強を始めまして、 ファイルを複合化、解凍するだけのシェルを作ろうと思っています。 fukugo.sh $1 でシェルを実行 /home/allday/log/upload/201701261507(←ログの作られる時間で変わります)aaaaa.tar.gz.e というファイルを$1引数に指定 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー !/bin/sh # # init CWD=$(cd $(dirname $0) && pwd) #cd ${CWD} # if [ -z $1 ] then echo "引数を指定してください" exit fi echo "Start" echo "指定されたtarファイルを複合化します" fukugo-decrypt $1 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー fukugo-decryptは私の会社で使われているtarを複合化するコマンドです(環境変数?) 複合化すると /home/allday/log/upload/201701261507aaaaa.tar.gz というファイルになります。 このできたファイルをシェルに入れる次のコマンドの引数にしたいです。 が最後の.eが無くなるため$1では指定できないと思います。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー echo "複合化されたファイルを/tmpフォルダに入れておきます" mv /home/allday/log/upload/201701261507aaaaa.tar.gz /tmp/ echo "ファイルを展開します" tar zxvf /tmp/201701261507aaaaa.tar.gz echo "End" ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 複合化された後の/home/allday/log/upload/201701261507aaaaa.tar.gzや 移動後の/tmp/201701261507aaaaa.tar.gzは変数で設定するとよいと聞いたのですが、 どのように設定すればよいかわかりません。 お分かりになる方、お願いします。 教えてください。