954.
|
(無題)
2006年01月23日(月) 15時56分
|
|
|
●DOS/Windowsのバージョン:windows XP
フォルダを圧縮するコマンドってありますか?
あれば、ぜひ私に教えてください。
急を要するのでご存知の方がいましたら、
至急教えてください。
よろしくお願いします。
|
960.
|
フォルダ圧縮
2006年01月24日(火) 16時47分
|
|
|
>●DOS/Windowsのバージョン:windows XP > >フォルダを圧縮するコマンドってありますか? > >あれば、ぜひ私に教えてください。 > >急を要するのでご存知の方がいましたら、 > >至急教えてください。 > >よろしくお願いします。
フリーソフトを使わず、WindowXPの中のコマンドだけで行いたいのですが、ありませんか><
お願いします!
|
963.
|
Re:フォルダ圧縮
2006年01月24日(火) 18時14分
|
|
|
>>●DOS/Windowsのバージョン:windows XP >> >>フォルダを圧縮するコマンドってありますか? >> >>あれば、ぜひ私に教えてください。 >> >>急を要するのでご存知の方がいましたら、 >> >>至急教えてください。 >> >>よろしくお願いします。 > >フリーソフトを使わず、WindowXPの中のコマンドだけで行いたいのですが、ありませんか>< > >お願いします!
フォルダのプロパティの詳細で「内容を圧縮してディスク領域を節約する」にチェックすれば圧縮されますが、コマンドでやる手段はわかりません。
それとも、もしかして、lzh zip cab ファイル等を作りたいのでしょうか?Windows標準であるcabファイルならWSH+VBScriptで作れますが、lzhやzipは無理でしょう。
|
964.
|
Re:フォルダ圧縮
2006年01月24日(火) 19時07分
|
|
|
>フリーソフトを使わず、WindowXPの中のコマンドだけで行いたいのですが、ありませんか><
●cabarcを使う XPのインストールCDのSUPTOOLSフォルダに保存されている上級者用サポートツールにcabarcが含まれています。ただしcab形式に圧縮することしかできません。
●zipfldr.dllを使う open に rundll32.exe zipfldr.dll,RouteTheCall %L とレジストリに記録されてるのでこれで開くとエクスプローラが内容を表示する。これになんとかしてDDEメッセージを送って展開させて、なんとかして展開終了を検出して、開かれたエクスプローラのウィンドウを閉じる…かな? 圧縮はzipfldr.dllのDragDropHandlerを動かさないといけないみたいなのでドラッグアンドドロップで送り込む…? ちょっと無理っぽいですね。
●コマーシャルパッケージを導入する フリーウェアがだめならば商用ソフトでしょう。多種多用な圧縮形式にも対応できますし、最もすっきりした形でバッチ中から呼出せるのでは?
●新規にソフトウェアを導入すること自体がダメ? cmdではファイル中に終端記号が含まれているとそれ以降は読んでくれないので頑張ってWSHで圧縮展開ロジックを記述して下さい。新規に圧縮ソフトを書き起こす形です。
|
966.
|
Re:フォルダ圧縮
2006年01月25日(水) 08時26分
|
|
|
>>フリーソフトを使わず、WindowXPの中のコマンドだけで行いたいのですが、ありませんか>< > >●cabarcを使う >XPのインストールCDのSUPTOOLSフォルダに保存されている上級者用サポートツールにcabarcが含まれています。ただしcab形式に圧縮することしかできません。 > >●zipfldr.dllを使う >open に rundll32.exe zipfldr.dll,RouteTheCall %L とレジストリに記録されてるのでこれで開くとエクスプローラが内容を表示する。これになんとかしてDDEメッセージを送って展開させて、なんとかして展開終了を検出して、開かれたエクスプローラのウィンドウを閉じる…かな? >圧縮はzipfldr.dllのDragDropHandlerを動かさないといけないみたいなのでドラッグアンドドロップで送り込む…? >ちょっと無理っぽいですね。 > >●コマーシャルパッケージを導入する >フリーウェアがだめならば商用ソフトでしょう。多種多用な圧縮形式にも対応できますし、最もすっきりした形でバッチ中から呼出せるのでは? > >●新規にソフトウェアを導入すること自体がダメ? >cmdではファイル中に終端記号が含まれているとそれ以降は読んでくれないので頑張ってWSHで圧縮展開ロジックを記述して下さい。新規に圧縮ソフトを書き起こす形です。
ファイルではなく、フォルダを圧縮したいのです><
商用ソフトも使わず、Windowsのコマンドだけで行いたいです!
ちなみに、cabarcは使えなかったです;;
やっぱり無理なんでしょうか・・・
|
967.
|
Re:フォルダ圧縮
2006年01月25日(水) 13時29分
|
|
|
みらいさん
>ファイルではなく、フォルダを圧縮したいのです><
otnさんのコメントに関連しますが、「どういう目的で、どのような形態に"圧縮"したいか」によって答えは幾通りかに分かれると思います。そこが明確化すればもうちょっとマトを絞ったコメントが得られるかも。 とりあえず大別すれば次の2つになると思います。
[1]PC上での特定のフォルダ内のファイルの占有サイズを縮小し、ディスク容量を節約したい。 [2]特定のフォルダに含まれるファイル群を1つのファイルにまとめて、(たとえば)メール等に添付し、受信者側のPC上で元のサイズのファイル群が所定のフォルダ内に復元(解凍)できるようにしたい。
この部分が明確でないと話が拡散すると思います。
ちなみに[1]に関してはotnさんが、
>フォルダのプロパティの詳細で「内容を圧縮してディスク領域を節約する」にチェックすれば圧縮されますが、コマンドでやる手段はわかりません。
とおっしゃっていますが、WindowsNT,2000,XPではそれに該当するコマンドとして標準で「COMPACT」があります。ただしNTFS専用です。
このコマンドに関しては、 compact /? ……とすれば使い方が表示されます。
YanaKen
|
968.
|
Re:フォルダ圧縮
2006年01月25日(水) 14時25分
|
|
|
>ファイルではなく、フォルダを圧縮したいのです><
この部分がよくわかりません。 エクスプローラで表示されるファイルの種類「圧縮フォルダ」(実際はZIP形式書庫)にしたいということですか? それともフォルダのプロパティ→属性の部分の「詳細設定(&D)...」→圧縮属性または暗号化属性の「内容を圧縮してディスク領域を節約する(&C)」にチェックが入った状態にしたいのですか? 一般的にはファイルやフォルダなどストレージ関連で圧縮と言う場合、書庫(ZIP、RAR、LHZ、CAB、7Z、tar.gz、tar.bz2などなど)化することを指すと思っていましたが…
>商用ソフトも使わず、Windowsのコマンドだけで行いたいです!
だから、具体的にはどういう形にフォルダを圧縮したいんですか?
>ちなみに、cabarcは使えなかったです;;
そりゃーOSを標準インストールしただけじゃ入ってないですからね。インストールCDのSUPTOOLやらVALUEADDやらのオプショナルなインストール可能なツール群に含まれてるんですよ。
|
969.
|
Re:フォルダ圧縮
2006年01月25日(水) 15時44分
|
|
|
フォルダの圧縮形態は何でもいいんですよ~ ZIPでもどんな形でもいいんです。 どういう風に使うかは仕事上で使うのでいえません。 あるフォルダを指定して、デスクトップ上で右クリックをして送る→圧縮zipということができるのに、なぜコマンドで出来ないのでしょうか? 出来るんだから、あるんじゃないかと思い聞いてみました。 COMPACTでは、表示や変更なので通常フォルダをZIPなどに変えれないと思うんですよ。 だから、どうやったらいいものかと・・
|
970.
|
Re:フォルダ圧縮
2006年01月25日(水) 16時56分
|
|
|
>フォルダの圧縮形態は何でもいいんですよ~ >ZIPでもどんな形でもいいんです。
>出来るんだから、あるんじゃないかと思い聞いてみました。
これまでのスレッドの流れを見てお判りになったと思いますが、書庫を作るためのCLI用コマンドは標準では持っていません。
>COMPACTでは、表示や変更なので通常フォルダをZIPなどに変えれないと思うんですよ。
これは、フォルダやファイルの圧縮属性を変更するコマンド。ディスクの容量を稼ぎたいときに使うものです。
>だから、どうやったらいいものかと・・
一番のおすすめは、CLI用のコマンドが含まれている書庫の圧縮伸長を行なうソフトウェアを導入すること。 Microsoft製でなくてはならないならcabarcが含まれているサポートツールやCabinet SDKを導入する。 しっかりしたサポートが受けられれば良いというならPKZIPなどの商用パッケージを購入して導入する。 ソースコードが見れる安心感があればフリーソフトでも良いならば7zなど。 特にこだわらないならば星の数程に様々なソフトがある。
導入するのが駄目ならば頑張ってWSH(VBSやJSなど)のスクリプトを書く。 ヒント Shell = CreateObject("Shell.Application"); zipFolder = Shell.NameSpace("hoge.zip"); Zip圧縮を行なうためのドロップ先のファイルの拡張子は.ZFSendToTargetであること このあたりを利用すれば作れるんじゃないかな
|
971.
|
Re:フォルダ圧縮
2006年01月25日(水) 18時08分
|
|
|
みらいさん、イルカです。
>フォルダの圧縮形態は何でもいいんですよ~ >ZIPでもどんな形でもいいんです。 >どういう風に使うかは仕事上で使うのでいえません。
必要な情報を提示しないで、一方的に要求しても誰も真剣にはいてにしてくれないでしょう。 個人情報や業務に差し支える内容ではなく、どういう目的でというだけです。
★たとえば、「他のパソコンにCDでデータを移動したいのですが、特定のディレクトリにあるファイルをディレクトリごとZIP形式で圧縮したい」とか・・
★フォルダー/ディレクトリだけ圧縮できますが、基本的に意味がありません。 WindwosはファイルをHDD上のクラスタという区画に分けて保存し、それぞれはその次に来るファイルがあればそれがどのクラスタに存在するかの情報を持っています。フォルダーというものは、そのフォルダーにどのファイル(の先頭)が入っているかを示す単なるインデックスでしかなく圧縮しても意味がありません。通常はそれに追加していきます。
>あるフォルダを指定して、デスクトップ上で右クリックをして送る→圧縮zipということができるのに、なぜコマンドで出来ないのでしょうか?
私は単純に
> zip -r abc.zip [フォルダー名]
tar.gzのほうが多いかも・・・
★スレッド形式の掲示板では、無用な引用は不要です。同じ文章を何度も読みたくはない!!
$ man zip ZIP(1L) ZIP(1L)
NAME zip, zipcloak, zipnote, zipsplit - package and compress (archive) files
SYNOPSIS zip [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$] [-b path] [-n suffixes] [-t mmddyyyy] [-tt mmddyyyy] [ zipfile [ file1 file2 ...]] [-xi list]
zipcloak [-dhL] [-b path] zipfile
zipnote [-hwL] [-b path] zipfile
zipsplit [-hiLpst] [-n size] [-b path] zipfile
DESCRIPTION zip is a compression and file packaging utility for Unix, VMS, MSDOS, OS/2, Windows NT, Minix, Atari and Macintosh, Amiga and Acorn RISC OS.
____________イルカ_________________ [理科]小中高生の理科質問箱 ・ [日常]日常の科学
【理科父母】 ・ 【自由研究】質問箱  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
個人(@nifty)
|
972.
|
Re:フォルダ圧縮
2006年01月25日(水) 18時19分
|
|
|
otn です。
> ちなみに[1]に関してはotnさんが、 >>フォルダのプロパティの詳細で「内容を圧縮してディスク領域を節約する」にチェックすれば圧縮されますが、コマンドでやる手段はわかりません。 > とおっしゃっていますが、WindowsNT,2000,XPではそれに該当するコマンドとして標準で「COMPACT」があります。ただしNTFS専用です。
あちゃー、HELPで出てくる一覧にもあるのに、思い浮かばないとは。
|
※Manager's comment: 言いたくないけど質問のしかたとしてはダメの見本ですね……。