• ベストアンサー

htmlファイルだけをtar圧縮したい

フォルダ以下の全てのファイルをtar圧縮する際に、htmlファイルのみを圧縮したいのですが、どのようなコマンドを入力すればよいでしょうか…? また、それが不可能なら~バイト以下のファイルでも構いません。 どのような状況かと申しますと、サーバのデータを全て圧縮しようとしたところ、動画などのファイルが重すぎて圧縮に時間をかけてしまうため、 必要なhtmlファイルのみを抽出し、圧縮したいと考えている次第です。 どうかご教示お願いいたします。

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

  • ベストアンサー
  • dedenn
  • ベストアンサー率54% (6/11)
回答No.2

find ./ -name "*.html" -exec tar cvf [TARファイル名] {} \; こんなのでいかがでしょう? 一発だと思います。 削除する場合も同様ですね。

lefthand77
質問者

お礼

ありがとうございました!!無事出来ました

その他の回答 (2)

  • pon_kotu
  • ベストアンサー率21% (8/38)
回答No.3

訂正します。 tar で固める部分は tar -cvf 固めるファイル名 `cat list_file` で、できると思います。 同時に圧縮するのであれば、-cvf -> -cvzf にしてください。

lefthand77
質問者

お礼

まずファイルを作成する方法もあるんですね。 参考になりました。ありがとうございました!

  • pon_kotu
  • ベストアンサー率21% (8/38)
回答No.1

該当のディレクトリでまずリストファイルを作る cd 該当のディレクトリの一番上 find ./ -name "*.html" > list_file.txt tar -cvf まとめるファイル名 -L list_file.txt で、できると思います。

関連するQ&A

  • 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.gzへの圧縮なんですが まとめて圧縮できないかと悩んでおります。 全データを一つにまとめて圧縮なんてできるんでしょうか? コマンドだとファイル名をbackup.tar.gzにするとして tar cvfz backup.tar.gz /  になるのですか?? よろしくお願いします。

  • 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

  • tar.gzファイルのリストアについて

    Postgres初心者です。 教えてください。 pg_dumpコマンドでdump拡張しのバックアップファイルを生成し、 tarコマンドで****.tar.gzファイルに圧縮しました。 このtar.gzのファイルを直接リストアするコマンドがあれば 教えていただけないでしょうか? -bash-3.2$pg_restore -U postgres -d (データベース名) < ****.tar.gz と実行すると、以下のエラーメッセージが表示されます。 →pg_restore: [アーカイバ] 入力ファイルが有効なアーカイブではないようです。 -bash-3.2$gunzip -C ****.tar.gz | pg_restore -d (データベース名) と実行すると、以下のエラーメッセージが表示されます。 →pg_restore: [tarアーカイバ] tarアーカイブ内でファイルtoc.dat用のファイルヘッダがありませんでした よろしくお願い致します。

  • tar コマンドで

    tar コマンドの r オプションを使ってファイル名が同じものを一つのアーカイブに圧縮しました。 以下、t オプションで確認。 ---------------------------------------------- [root@localhost xxx]# tar tf tarFILE.tar file01 file01 ---------------------------------------------- この内、上の[file01]には"変更前"と記述されていて、 下の[file01]には"変更後"と記述されています。 x オプションでファイルを取り出すと、"変更後"と記述されている[file01]が 抽出できますが、"変更前"と記述された[file01]を取り出す場合にはどうすればよいでしょうか? RHEL 5.6です。 ご回答お願いします。

  • tar圧縮ファイルが作成できず困っています。

    tarとgzipをパイプでつなげて使用すると、tar圧縮ファイルが正常に 作成できず困っています。(Solaris) *やりたいこと* ファイル一覧test.txtに記載されているファイルを一度に tar圧縮したい。(tar・gzip別々でなく) *コマンドライン* # tar cvfp - -I test.txt | gzip -c > test.tar.gz a aaa.txt 1K a bbb.txt 1K a ccc.txt 1K # ls -l test.tar.gz(←とりあえずファイルは作られている) -rw-r--r-- 1 root other 33235 5月 12日 10:03 test.tar.gz # gunzip test.tar.gz(←unzipもできる) gunzip: /usr/bin/gzip has 2 other links -- unchanged # ls -l test.tar -rw-r--r-- 1 root other 64076 5月 12日 10:03 test.tar # file test.tar(←この時点でおかしい。file種別がアーカイブじゃない) test.tar: ELF 32-ビット MSB 実行可能 SPARC バージョン 1[動的にリンクされています][取り除かれています] # tar xvfp test.tar(←エラーになる) tar: ディレクトリの検査合計エラーです。 # /bin/tar xvfp test.tar(←違うtarでやってみるとエラーがでる) tar: This does not look like a tar archive tar: Skipping to next header tar: Archive contains obsolescent base-64 headers tar: Read 2636 bytes from test.tar tar: Error exit delayed from previous errors 上記のような現象になって困っています。パイプ以降をcompressに するとふつうにいけるので、gzipがおかしいような気もするのですが。 サイトを検索するとみなさんGNUのgtarをお勧めしているようですが そちらもだめでした。 どなたか解決策をご存知の方がいたらご教授願います。

  • tarファイルが送られてきたのですが

    お世話に成ります。 無知な上、いろいろ検索し解決法を探しましたが 全く進みませんのでお詳しい方ご教授お願いします。 お客さんからまず、.tgzというファイルが送られてきました。 これは圧縮ファイルだと知っていたので、lhaplusを使い解凍しました。 フォルダが作成され中に.tarという拡張子のファイルが入っていました。 ここから全く進みません。解凍レンジというソフトなどいろいろ試しましたが 「書庫でないかサポートしていない形式です」とエラーが出ます。 中にデータが入っていると思うのですが、どうにかして取り出したいです。 親切に1からご教授してくれる方、お願いします。

  • 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 

  • ◆圧縮&伸張コマンド

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