• ベストアンサー

XCOPYについて(WindowsXP)

宜しくお願いします。 DosコマンドのXCOPY はパスの文字数制限がありますよね。 この文字数制限の所為で作業が詰まってしまっている状況です。 ※動作環境はWindowsXPです。 何とかしてこの文字数制限を取っ払う裏技みたいなものはないでしょうか? もしくは、XCOPYと同等の機能を持ち、文字数制限が無いコマンドとかないでしょうか? なお、私のほうで色々と調べた結果は以下の通りです。 ・パス長を短くする ・色々あるフリーソフトを使う ・robocopyというコマンドを使う パス長を短くするようにするのは最終手段ですね。 フリーソフトを使わない方法を知りたいです。 robocopyはリソースキットのインストールが必要なのが条件として厳しいです。 上記以外で何かご存知の方、お教えいただけると助かります。 また過去に私と同様の件で悩まれた方の解決策、 もしくは「諦めろ」という意見でもかまいませんので ご助言を宜しくお願い致します。

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

  • ベストアンサー
回答No.2

こんにちわ。 パス名には、DOS互換のため、8文字の名称が別にあります。 コマンドプロンプトで "dir" と叩くと、ファイル名、パス名が出てきますよね。 ここで "dir /x" x を付加して叩くと、8文字の名称が得られます。 "cd [その8文字のパス名]"で下のパスに入って同じ事を繰り返すと、全て8文字でのパス名が取得できます。 では頑張って。

hinako913
質問者

お礼

教えていただいたやり方で何とかなりそうです。 詳しく教えていただき、ありがとうございました。

hinako913
質問者

補足

ご回答ありがとうございます。 >ここで "dir /x" x を付加して叩くと、8文字の名称が得られます。 そうでしたか。このことは知りませんでした。 一先ずこの方法で試してみます。 取り急ぎご報告まで。 お礼は後ほど致します。以上です。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.4

ANo.1です。 ひょっとして「ShortFileName」の意味が通ってませんでした?8文字で表記されるほうの名前です。Win95以降での通常の名前はLongFileNameとして別扱いです。 #カテゴリがカテゴリなので詳しい説明をしなかったのが間違いだったか(汗

hinako913
質問者

補足

なるほど、そういうことでしたか。 勉強不足で申し訳ございません。 カテゴリ違いの件も、勉強になりました。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
noname#210617
noname#210617
回答No.3

Source、Targetのフォルダを共有化(アクセス制限は設定する)して、ネットワークドライブとしてマウントしてしまう。

hinako913
質問者

お礼

ご回答いただきありがとうございます。 こういった方法もあるのですね。勉強になります。

全文を見る
すると、全ての回答が全文表示されます。
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

>DosコマンドのXCOPY はパスの文字数制限がありますよね。 >この文字数制限の所為で作業が詰まってしまっている状況です。 Source、Targetのどちらが制限にかかるんでしょうか? >パス長を短くするようにするのは最終手段ですね。 フォルダの階層をShortFileNameに置換するのが「最初の手段」だと思いますけど・・。Source側ならcdで移動すればいいし。 >robocopyはリソースキットのインストールが必要なのが条件として厳しいです。 なぜ厳しいのかがわかりません。リソースキットインストール不可という環境なんでしょうか?

hinako913
質問者

補足

>Source、Targetのどちらが制限にかかるんでしょうか? 両方ですね。どちらもパス名が長すぎなんです。 >フォルダの階層をShortFileNameに置換するのが「最初の手段」だと思いますけど・・。 仰る通りです。 しかし現在のフォルダ階層を仕様として決めてしまったため、 なるべくパス長を短くするのは避けたいのです。 そういう意味で、最終手段と表現してしまいました。 >リソースキットインストール不可という環境なんでしょうか? その通りです。 説明足らずな部分でご迷惑をおかけしました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • XCOPYコマンドの数量制限ありますか?

    XCOPYコマンドで、/S オプションでサブフォルダ内のファイルを全てコピーする場合で、コピーを実行するファイル数に制限はありますか? 1000万以上のファイルをXCOPYでコピー実行していたら、600万程度(2/3くらい)まで完了して、それ以下はコピーされていませんでした。 既存の同名ファイルに上書き(/Y)しています。 DOS窓にエラーメッセージはありません。 別のPCでも同じような箇所でストップしていました。 数量に制限があるのでしょうか?もしくは他にどのような原因があるでしょうか?

  • ファイル数が多くてコピー(バックアップ)できない

    バッファロー製のテラステーション(1TB)からWindows 2000 Serverへデータをネットワーク経由でバックアップしているのですが、1フォルダの下にあるファイル数が多くて(おそらく50万ファイルを越えていると思います。)コピーが出来ない状態です。 試したコマンドはxcopy、copy、robocopyです(「システム リソースが不足しているため、要求されたサービスを完了できません。」とエラーが表示されます。)その他にもフリーソフトのBunBackなども試しましたが、うまくいきませんでした。 Windows 2000 ServerのスペックはPentium 4 2.4GHz メモリは1GBです。 何か良いソフト、方法があればご教授頂ければ幸いです。

  • XCOPYコマンドに変わるフリーソフトについて

    XCOPYコマンドでは デレクトリー付きファイル名のトータルバイトが256バイト内の制約があります。 256バイト以上をサポートするフリーソフトはないでしょうか。 欲を言うと BAT的に自働起動できるものがあればベストです。 ご存知な方 ご教示いただけると助かります。

  • 不良セクタを無視してファイルをコピーしたい

    どなたか、不良セクタを無視して、ファイルを強制的にコピーできる方法をご存知ではないでしょうか? Windowsは起動しないので、DOS上で動く物に限ります。 DOSコマンド,フリーソフトだと嬉しいです。 (DriveCopyという市販ソフトは発見したのですが…) XCOPYコマンドではダメでした。 よろしくお願いいたします。

  • Vista標準搭載ソフトをXPで実行すると?

    ファイル置場のデータの管理にRobocopy.exeを使用しています。 今まで2003リソースキットのを使っていましたが、Vistaには新しいバージョンが搭載されているということで、ちょっと使ってみようと思いました。 XPとVista Business 32bit版のデュアルブートにしているPCがあり、XPで起動した状態でVistaドライブのRobocopy.exeをダブルクリックすると 「[パス]Robocopy.exe は有効な Win32 アプリケーションではありません。」 と言われます。Robocopyに限らずExplorerでもCmdでもそうでした。(※Vistaからは正常に動きます。)32bit版のVistaでも標準搭載ソフトは64bitということなのでしょうか??

  • WindowsXPでgrepして置換えがしたい。

    OS:Windows XP dosコマンドなどで、grepして置き換えがしたいです。 dirA | +dirA1 || |+dirA11 ||| ||+file1.text || |+file1.text || |+file3.text | +dirA2  |  +file1.text  |  +file2.text dirA以下のfile1.textに対し、文字列"abc"を"def"に置き換える。 と dirA以下の*.textに対し、文字列"あああ"を"いいい"に置き換える。 を1アクションでやりたいです。 第一希望  dosコマンド(バッチファイル)など最初からXPに入っているもので出来るのがベストです。 第二希望  秀丸エディタにgrepして置換の機能がありますが、これをどうにか登録して使う方法があればそれでも可。 第三希望  何かしらフリーのソフトをダウンロードして実現する。 以上、よろしくお願いします。

  • vbsより実施のdosコマンド(xcopy)について教えてください。

    何方かご教授頂けませんでしょうか。 1.E:→C:へ特定のDir/Fileコピーを作成したい。 2.特定のDir/Fileは、入力リストにFilePathが行単位で記述される。 3.C:にはE:と同様なDirが存在するものもある。 4.VBSは入力リストを行単位で読み込み、BATファイルへpathを渡す。 5.コマンド発行→コマンドより戻り値→VBS→コマンド発行→・・・  と出来ればさせたいです。(この部分どうしてよいものか?) VBS--- Set objFso = CreateObject("Scripting.FileSystemObject") Set objWsh = WScript.CreateObject("WScript.Shell") inFL = objFso.GetAbsolutepathname("pathlist.txt") inBAT = objFso.GetAbsolutepathname("xcopy.bat") Set objin = objFso.OpenTextFile(inFL,1) Do While objin.AtEndOfStream <> True inline = objin.readLine inpath = "E:"&inline outpath= "C:"&inline objWsh.Run(inBAT&" "&inpath&" "&outpath) Loop bat--- echo F|xcopy /Y %1 %2 pathlist--- \temp\temp1\a.xls \temp\temp1\b.xls ~ 上記、VBSを実行させた結果は --- C:\temp>echo F | xcopy /Y E:\temp\temp1\a.xls C:\temp\temp1\a.xls C:\temp>echo F | xcopy /Y /Y E:\temp\temp1\a.xls C:\temp>echo F | xcopy /Y /Y /Y   ~ 繰返し --- 現状、DOS窓の中、コマンドが繰り返され止まりません。 何方か、「コマンド発行→コマンドより戻り値→VBS→コマンド発行→・・・」、Dir/Fileのコピーがpathlist行単位に行えるようご教授頂けませんでしょうか。 何分初心者なので、拙い文章、ご容赦願います。

  • WinNT→Win2000 アクセス権を含むデータの移行方法について

    ファイルサーバーとしてWindowsNTサーバーを利用しています。今回このパソコンをWindows2000サーバーと入れ替える事にしました。アクセス権を設定してあるフォルダやファイルがかなりあり、この設定を保持したままファイルのコピーを行いたいのですが、これはやはりWindowsNTリソースキットにあるscopyを使用するのが一番なのでしょうか。実は手元にWindowsNTリソースキットが見当たらないのですが、再入手するにはどうすれば良いのでしょうか。また、他の方法でアクセス権ごとコピーする方法があれば教えてください。フリーソフトなんかあるとかなり助かるのですが・・・ (まだ手元にWindows2000サーバーが無い為試していませんが、Windows2000でWindowsNTのドライヴをネットワークドライヴとかに指定して、xcopyを使っての、アクセス権ごとのコピーは可能なのでしょうか?) また、共有設定をして共有のアクセス制限をかけているフォルダも複数あり、これもそのまま移行できると嬉しいのですが、、、可能ならばあわせてお願いします。

  • xcopy コマンドの EXCLUDE オプションの使い方

     Windows Xp の利用者です。  Bドライブが次のような構造になっています。 B:\ │ ├─┬─┐ │ │ │ B1 B2 B3   │   ├─┬─┐   │ │ │   │ │ │  B2a B2b B2c     │ file1, file2, file3,  このうち、B2b ディレクトリ以下のすべてのファイルを除外して、B2ディレクトリの下のすべてのファイルをAドライブにコピーしたいとき、 xcopy b:\B2 a:\ /S /Y /I /EXCLUDE:\B2b\ とすれば良さそうですが、それでは「ファイルを読みとれません: \B2b\ 0 個のファイルをコピーしました」になってしまってダメです。 xcopy b:\B2 a:\ /S /Y /I /EXCLUDE:b:\B2\B2b\ でも同じです。  どうやればいいのでしょうか。おわかりの方、お教えください。  ちなみに xcopy コマンドで「?」を指定して説明を読むと、次のように出てきます。 /EXCLUDE:ファイル1[+ファイル2][+ファイル3]... 文字列を含むファイルの一覧を指定します。各文字列はファイルの 中で別の行でなければなりません。 文字列がコピーされるファイルの絶対パスの一部と一致した場合、 そのファイルはコピーから除外されます。たとえば、\obj\ を指 定するとディレクトリ obj の下のファイルはすべて除外されます。 .obj という文字列を指定すると .obj という拡張子のファイルは すべて除外されます。

  • サーバマネージャで表示される情報の出力は可能?

    こんにちは。 NTのリソースキットや2000Serverにあるサーバマネージャ(srvmgr.exe)で表示される情報をテキストに出力したいと考えているのですが、可能なのでしょうか? 特に必要なのは、「使用」ボタンで表示される情報です。サーバマネージャにこだわるつもりもなく、コマンドでもリソースキット等のツールでも結構です。 要は、リモートからあるサーバーへ接続し、(そのサーバー上で)開かれているコレコレというリソースはダレダレユーザーによって使用されているというのが出力できればよいのですが・・ ただ使用できるツールやコマンドはマイクロソフト製に限るのですが。 ご存知の方、「もしやこれならば」という情報をお持ちの方、いらっしゃいましたらどうぞよろしくお願い致します。

このQ&Aのポイント
  • 購入から3年程度経ったルーターを使用しており、一昨日ネットが繋がらなくなりました。ルーターの管理画面を開いたところWAN設定が取得失敗になっています。
  • 不具合箇所を特定するためONUとPCを有線LANで直接繋げたところ問題なく接続できました。次にONUとルーターを有線LANで繋ぎ、ルーターの管理画面をwi-fiにて開いたところ継続して取得失敗となっていたことからルーター側の問題と推測しています。
  • ルーターのモードはRTに設定しています。今のところルーターの故障を疑っているのですが、何かお知恵があればお力を頂きたいと思います。
回答を見る