expandコマンドの使い方と注意点

このQ&Aのポイント
  • expandコマンドを使って複数のファイルを同時に展開しようとするとエラーが発生することがあります。
  • 展開キューの作成により、複数のファイルを同時に展開する場合にエラーが発生する可能性があります。
  • 解決策として、expandコマンドを1つずつ順番に実行することで正常に展開することができます。
回答を見る
  • ベストアンサー

expandコマンドについて

expandコマンドを4つ同時に起動し、Aというフォルダにある4つのcabファイルをBというフォルダに展開しようとすると「1つまたは複数のファイルを解凍できませんでした。デルタパッケージ解凍機能により0x80070002が戻されました。」というメッセージが表示され正常に解凍できません。expandコマンドを1つずつ4回に分けて起動すると正常に解凍できます。 expandコマンドを起動させた時の展開される側のフォルダの動きを見たところ、展開キュー?みたいなワークフォルダが作成されます。想像ですが、4つ同時に起動した時は展開キューヘの展開がうまくいかずに解凍出来ないような気がしてます。 expandコマンドを4つ同時に起動して、同じフォルダにファイルを解凍するにはどうすればよいでしょうか?。OSはWindows2008Serverです。 よろしくお願いします。

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

  • ベストアンサー
  • vaidurya
  • ベストアンサー率45% (2714/5983)
回答No.1

expandコマンド自体に、一時ディレクトリーの名前を指定する機能が無いようですから 別々のディレクトリーで展開した上で それをまとめて目的のディレクトリーに移動させるという方法が考えられます。 一時ファイルが、必ずカレントディレクトリーに作られるのであれば 展開先の指定オプションがあるわけですから 元のファイルを別々のディレクトリーに置いてから処理するという方法が有効かもしれません。 展開元を指定するオプションもあるので カレントディレクトリーだけ違えればいいような気もします。

関連するQ&A

  • コマンドプロンプト "expand" について

    コマンドプロンプトで、 >expand [圧縮ファイル名] [解凍先フォルダ名] の構文で実行しましたが、解凍先フォルダには圧縮されたままのフォルダが移動されただけでした。 解凍されたフォルダを解凍先に移動したいのですがどのようにすればよいのでしょうか。 よろしくお願いします。

  • Windows NT 4.0 にExpand コマンドはあるか?

    Windows 2000 / XP には*.CABファイルを展開するExpandというツールが組み込まれていますが、NT 4.0 にもあったのでしょうか? たぶんあったのではないかと思っていますが、2世代も前のOSとあって、WEB上での検索もままならず、確証が得られません。 実機があれば、簡単に確認できるのですが、手元に環境がないので困っています。 ご存知の方、教えて頂けると助かります。

  • WinXP Pro ZIPファイル、CABファイルについて

    お世話になっております。 XP professionalです。 どっかのページで、ZIPファイルと、CABファイルは XPで標準で解凍(展開)できる とかいてありました。 (ほんとうでしょうか) たしかめると たしかに CABファイルはふつーにダブルクリックで開くことができました。 ある人に聞くと、XPでCABファイルの展開はできるものとできないPCがあると聞きましたが本当でしょうか?なにかコマンドを打たないと展開できないとか・・ (ME以下だと展開できないのかな・・) ZIPファイルもなにも解凍ソフトをいれなくても解凍できるのでしょうか? もうひとつ、XPに圧縮フォルダがあるとききましたが、いったいどこにあるのでしょうか? こまごまと質問しまして申し訳ございませんが おしえてください

  • コマンドプロンプトでの圧縮ファイルの解凍

    コマンドプロンプトで圧縮ファイルを解凍したくて、 >expand [圧縮ファイル名][解凍先] と、入力しても解凍できません。 どなたか詳しいかたはおられませんか?

  • .cabファイルと展開後のファイルの比較

    ができるソフトはありますでしょうか。 .cabファイルはインストールパッケージなので、 展開後のファイルは、いくつかのフォルダに分かれて配置されます。 よろしくお願いします。

  • CABファイルが普通に開けません

     XPであれば、標準でCABファイルは開けるはずですよね?もちろん解凍ソフトを使えば展開は出来るのですが、圧縮した複数のファイルが全部いっぺんに解凍されてしまうんです。ウィンドウズのエクスプローラで開けば、圧縮したファイルから展開したいもののみ選んで展開できますよね。これが結構便利なので良く使っていたのですが、学校のパソコンで持ち込んだCABファイルを開こうとすると、上記のような通常の展開が出来ません。CAB32.dllをsystem32フォルダに入れてみたり、関連付けをエクスプローラにしてみたりしてみましたが、どうしても解決しません。ファイルの表示アイコンも通常の引き出しのアイコンではなく、不明なファイルのアイコンになっています。どうすれば通常のように展開できるのでしょうか。

  • LHA 解凍 展開 コマンド

    初めて投稿します。 他の記事を読み実施したのですがうまくいきませんでした。 コマンドによるバッチを作成するなかで、LHAを使った解凍を実施したいです。 その解凍がうまくいきません。 解凍はするのですが、意図した結果になりません。 テストとして"a01.lzh"というlzhのファイルを用意しました。 その中身は、 "a01"というフォルダに "www1_aaa_01.log"と"www1_aaa_02.log"という2つのファイルが格納されている状態です。 これをそっくりそのまま展開したいのですが、 LHA(http://www.vector.co.jp/soft/dos/util/se002413.html)を入手して 下記コマンドを入力 LHA x a01.lzh とするとA01というフォルダが展開されるのですが、 フォルダの中身は"WWW1_AAA.LOG"という1個のファイルになっていまいます。 ※データとしては"www1_aaa_02.log"の内容のみが入っています。 "www1_aaa_01.log"と"www1_aaa_02.log"という元と同じく2つのファイルをそのままに展開するにはどのようにすれば良いのでしょうか? ご教示いただけませんでしょうか。 なお、下記ページも見てみました。 http://oshiete1.goo.ne.jp/qa600990.html

  • VBScriptでCABファイルを展開する

    お世話になっております。 VBScriptを使用して、あるディレクトリにあるCABファイルを展開するプログラムを作成しているのですが問題がありまして、分かる方いらっしゃいましたらぜひご教授頂きたいです。 ■問題 CABファイルを展開している間はスクリプトをストップさせ、展開が終了したら次のCABファイルを展開しにいくと言うプログラムですが、CABファイル展開が終了しても、sleepのDo whileを抜けてくれない。 ■以下ソースです↓↓↓ Option Explicit On Error Resume Next Dim objWshShell ' WshShell オブジェクト Dim strHomePath ' ホームパス Dim objFSO ' FileSystemObject Dim strFolder ' フォルダ名 Dim strCab ' CABファイルパス Dim CmdLine ' 実行コマンド Dim objExecCmd ' 実行コマンド情報 strFolder = "" strHomePath = "" strCab = "" レジストリからフォルダパスを取得する処理 If strHomePath <> "" Then Set objFSO = CreateObject("Scripting.FileSystemObject") If Err.Number = 0 Then strFolder = strHomePath ' CABファイルのパス strCab = strFolder & "\CabG.CAB" ' CABファイルの展開コマンド作成 CmdLine = "expand """ & strCab & """ -f:* """ & strFolder & """" 'CABファイルの存在確認 If objFSO.FileExists(strCab) = True Then ' CABファイル展開 objWshShell.Exec(CmdLine) ' 実行コマンド格納 Set objExecCmd = objWshShell.Exec(CmdLine) WScript.Echo "成功:コマンドを格納" & CmdLine & Err.Description ' 実行コマンドが終了するまで待つ Do While objExecCmd.Status = 0 WScript.Sleep(3000)               WScript.Echo "展開中です" & Err.Description Loop WScript.Echo "成功:コマンド終了" & CmdLine & Err.Description '展開したCABファイルを削除する 'objFSO.DeleteFile strCab, True '展開で作成されるOSDファイルを削除する Else WScript.Echo "エラー:" & strCab & "が存在しません" & Err.Description End If 順次同じようなロジックで次のCABファイルを展開する ■↑↑↑↑ DOS画面から起動すると、do while文が永遠に抜けれなくなります。。。 いろいろと調べて試行錯誤しているのですが、なかなか解決に至りません。 ぜひ、よろしくお願い致します。

  • 解凍について

    解凍ソフトLhaplus という有名なソフトがあると思いますが、このソフトなどで解凍するとき(これはアーカイブファイル)ではありません。 とか(CABファイルです圧縮しますか)などコマンドが出て正常に解凍できません。なぜこうなるのか、こうなった場合の対処方法があれば教えて頂きたいです。 あと、RARファイルのパスワードを解析できるソフトがあれば教えて 頂きたいです。(違法ですかね?)

  • コマンドプロンプトでのインストール方法

    PC初心者です。 windows7への移行に伴い、プリンターと複合機を同時に利用したいため、ドライバの無い分を手に入れる必要がありました。 「プリンターの追加」から進んで、「windows updete」ボタンをクリックしましたが、「検索中」が30分以上でフリーズ状態。 何度試しても同じなのです。 手順に間違いはありません。 友人にも、ネット検索ででも確かめました。 プリンターは友人のと同じですし、既に7に移行した友人の時は成功したそうです。 PCの型も同じ、光接続も同じなので合点がいきませんが、どうにも出来ません。 色々調べて、「windowsupdete カタログ」から、ドライバを直接ダウンロードしました。 でも、中を見ても一般的なexe拡張子が見あたらずインストールが出来ないのです。 マイクロソフトのHPには、「コマンドプロンプト」でインストールせよとあります。 入力見本の文字を書いておきます。  expand <CAB ファイル名> -F:* <保存先> ← <CAB からの文字は斜めの感じです。 でも、どういう風に入力するのか全く分かりません。 「¥」のが確かいるのかもと・・・ ドライバは、デスクトップに保存しました。長い名前のフォルダで、その中にフォルダ名と同じ 名前のアイコンがあります。 開いたら、多くのファイルがありますが、exeファイルはありません。 どなたか教えて頂けないでしょうか? 違う方法でインストール出来るならその方法でもOKです。 よろしくお願いします。