親子におすすめの新型プラネタリウムとは?

moveコマンドで別のドライブにフォルダを移動

コマンドプロンプトでmoveコマンドを使って
フォルダを別のドライブに移動させたいのですが、
「アクセスが拒否されました」と出て移動が
できません。

同じドライブ内だと問題なく移動できます。
また、別のドライブでもファイルなら問題なく移動できます。
フォルダは別のドライブに移動できないのでしょうか?

試してみたことは以下の通りです。
同じドライブでフォルダを移動 → ○
同じドライブでファイルを移動 → ○
別のドライブにフォルダを移動 → ×
別のドライブにファイルを移動 → ○

コマンドの例
■これだとうまくいかない
 (別のドライブにフォルダを移動)
set moto="E:\test1"
set saki="C:\test2"
move %moto% %saki%

■これだとうまくいく
 (別のドライブにファイルを移動)
set moto="E:\test1.txt"
set saki="C:\test2"
move %moto% %saki%

よろしくお願いします。

A 回答 (1件)

なるほどね・・・


フォルダの名前がわかっているのであればですが、
set saki="C:\test2" ちなみに"set"はいりませんよ
mkdir %saki%
copy %moto%\*.* %saki%
などと、全ファイルというスタイルでコピー移動してしまえばうまくいきます。
それと移動は同一ドライブでのみできるので、この場合はコピーの方が解決が早いです。
xcopyなどはいかがですか?(標準機能)
使い方などは
xcopy /?
で調べてみてください(おそらくwわくわくするはずですが)
    • good
    • 0
この回答へのお礼

ご回答、ありがとうございます。

なるほど、コピーですか。
コピーした後、コピー元のフォルダを消せば
移動と同じことになりますね。

今xcopyでコピーをやっているのですが、
これでコピーした場合、フォルダ内の
ファイルやフォルダをコピーするようですね。
希望としては指定したフォルダもついた状態で
コピーしたいのです。。

すみません、分かりづらいですね。
■希望
E:\test1フォルダを切り取り、
C:\test2直下に貼り付け
→これと同じことがしたいです。

■現状
E:\test1フォルダ配下の全ファイル・全フォルダを切り取り、
C:\test2直下に貼り付け
→このようになってしまいます。
 test1フォルダがコピー先にできないのです。。

■コマンド
set moto="E:\test1"
set saki="C:\test2"
xcopy %moto% %saki% /C /Y /E /I
rmdir %moto% /S /Q

xcopyではこのようなことはできないのでしょうか?
アドバイスをよろしくお願いします。

お礼日時:2010/06/17 19:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qコマンドプロンプトでフォルダを移動させるには?

C:\Data\Mine\Pictureというフォルダ構造の時、
Pictureフォルダを
C:\Dataの直下に移動させたいのです。

moveでフォルダ移動させようとすると「アクセスが拒否されました」となってしまいます。
moveではフォルダの移動は出来ないのでしょうか?

(ダメならcopyとrmdirで対応します)

Aベストアンサー

moveでできますよ。
ご希望のケースであれば、move c:\data\mine\picture c:\dataとやればいいと思います。
そのフォルダの中に入って作業をしようとしているとか、フォルダの中にあるファイルをロックしているアプリケーションがあるとかではないですか?

Q複数フォルダをまとめて移動するバッチ

複数フォルダを、フォルダ内のファイルごと、移動させたいです。

イメージで言うと、下の
C001やC002の階層にあるフォルダ群を、A001の下に持って行きたいんです。
(B001のフォルダがジャマになっている)
[image]
root:.
└─A001
   └─B001
      ├─C001
      │  ├─File01
      │  └─File02
      └─C002
          ├─File01
          └─File02
[/image]

moveコマンドで出来るのかなぁと思っていたのですが、
複数ファイルは出来るんだけど、複数フォルダは出来ませんでした。
ファイルを一括して特定のフォルダにまとめるのではなく、
フォルダ構造は残して複数フォルダを一括移動させたい(中間フォルダ階層を消したい)です。

実際には上のイメージとは異なり、数百個のフォルダがあり、ファイル数も各フォルダに数万個入っているので、エクスプローラから切り取り&貼り付けを行うと、それだけで10分近くかかってしまい困っています。
可能なら、バッチで夜中に自動実行させて済ませたいです。

よろしくお願いします。

複数フォルダを、フォルダ内のファイルごと、移動させたいです。

イメージで言うと、下の
C001やC002の階層にあるフォルダ群を、A001の下に持って行きたいんです。
(B001のフォルダがジャマになっている)
[image]
root:.
└─A001
   └─B001
      ├─C001
      │  ├─File01
      │  └─File02
      └─C002
          ├─File01
          └─File02
[/image]

moveコマンドで出来るのかなぁと思っていたのですが、
複数ファイルは出来るん...続きを読む

Aベストアンサー

とりあえず、こんな感じでそのディレクトリにある全てのフォルダを一つ上のディレクトリに移動できると思いますが。

-------
@echo off
for /d %%f in (*) do move %%f ..
-------

Qコマンドプロンプトでアクセスが拒否されてしまいます

コマンドプロンプトでコンパイルしようとすると、「アクセスが拒否されました」と
出てしまいます。参考にしたのは下記のサイトです。

http://www.javadrive.jp/start/before/index3.html

管理者権限で入っても変わりませんでした。
どなたか解決方法を教えて頂けないでしょうか。

Aベストアンサー

No3です
>書き込みはできないようです。適当に「kkkk」と入力したのですが、
この段階でコマンドプロンプトとか基本的に理解できてない人だということがわかります
更に日本語すら理解できない人でしょうか?
そんなこと書いてませんよね?(なんでも良いの一文しか読んでないのですか?)
その後に具体例を書いてるつもりですが正直こういった補足がされるとは
想像すらしていませんでした

Qバッチファイルでサーバーのファイルをクライアントへコピーしたい

サーバーに保存されているファイルを、
クライアントのCドライブへコピーしたい。

各クライアントにバッチファイルを配布して、
それを実行するだけでコピーされるようにしたいのです。

初心者で申し訳ないのですが、何卒よろしくお願いします。
------------------------

下記の記述ですと、普通にサーバーのCドライブへファイルがコピーされます。
しかし、コピー先はバッチファイルを実行したクライアントのローカルディレクトリにしたいのです。

copy \\サーバー名\フォルダ名\ファイル名 C:\

Aベストアンサー

>下記の記述ですと、普通にサーバーのCドライブへファイルがコピーされます。

そんなはずはありません。何かの勘違いでしょう。

>copy \\サーバー名\フォルダ名\ファイル名 C:\

だと、バッチファイルを実行したPCのC:\にコピーされます。

copy \\サーバー名\フォルダ名\ファイル名 C:
と、最後の \ を削れば、バッチファイルがあるのと同じディレクトリにコピーされます。

QXCOPYで指定したフォルダとファイルをコピーしたい

C:\AAAフォルダとC:\AAA以下のファイルをコピーしたくて、
XCOPY C:\AAA D:\BBB /E
とすると、コピー先のD:\BBBにはAAAフォルダにあるファイルはコピーされるのですが、AAAフォルダそのものはコピーされません。
XCOPY C:\ D:\BBB /E
とすればコピーできるのですが、そうするとC:\のほかのフォルダもコピーされてしまいます。
EXCLUDEオプションを使うには指定するファイルが多いため、あまり使いたくありません。(コピーする前にMDでコピー先にAAAフォルダを作成するのもなるべく避けたい)
知っている方がいらしたら教えて下さい。

Aベストアンサー

xcopy /e C:\AAA D:\BBB\AAA
複数ファイルのコピーでコピー先が存在しないとき、ファイル名と見なすかディレクトリ名と見なすか聞いてきます。

応答を聞かれるのが嫌なら
echo d | xcopy /e C:\AAA D:\BBB\AAA
でいいはず。

Qbatである文字列内に特定の文字列が含まれているか確認したい

batファイルの中である変数「abc」の中に「test」という文字が含まれていたら○○を行なうという分岐を作成したいのですが、どのように行なえばよいのでしょうか?

そのまま、ずばりのお答えお待ちしております。

よろしくお願い致します。

Aベストアンサー

大文字小文字を区別しなくていいなら、

if not "%abc:test=%" == "%abc%" echo 含まれていた

区別するなら、

echo %abc% | find "test" >NUL
if not ERRORLEVEL 1 echo 含まれていた

QDOSコマンドで共有ファイルへアクセスを行う際のパスの書き方

初めまして。

本題になります・・・

DOSコマンドで共有ファイルのアクセスを行う際のパスの書き方は、
「\\サーバー名\共有フォルダ名\ファイル名」ですが、DIRなどを行うと、認証が走って、ファイルへのアクセスが出来ません・・・全てDOSコマンド(バッチ)で完結したいのですが・・・
例えば、「dir \\サーバー名\共有フォルダ名\ファイル名」とした場合に、「ログオン失敗: ユーザー名を認識できないか、またはパスワードが間違っています。」と表示されてしまいます。
現在行いたい処理は、他サーバーの「共有ファイルのコピー&削除」、「共有フォルダの作成」です。

【環境】
コマンド実行させるサーバー:[WIN2KSEVER(admini権限/パスワード共通)]
他サーバー:[WIN2KSERVER(admini権限/パスワード共通)]

解決する方法がありましたら、お教え下さい。
お願いします。

Aベストアンサー

実際に試してみました。

net use \\サーバー名 パスワード /user:ユーザー名
dir \\サーバー名\共有フォルダ名\ファイル名

でいけました。

QDirコマンドでフォルダ内ファイルの合計サイズをだすには?(コマンドプロンプトにて)

いろいろ調べましたが不明な点があり、質問します。

WindowsのDOSプロンプトでdirコマンドを打つとフォルダ・ファイルの一覧が表示されますが、その中にファイルサイズが表示されています。
このサイズを合計できるコマンドはありませんか?
DIRコマンドのオプションを調べましたがそれらしいものが見当たりません。
具体的には
C:\xxx\配下に50個程度のファイルがあります。
その50個の合計サイズを知りたいです。
xxxフォルダの親フォルダにはアクセス不可です。

ずーっと悩んでいます。よろしくお願いします。

なお、OSはWindowsNTか2000で使用予定です。

Aベストアンサー

カレントドライブ、カレントフォルダを
C:\xxx\
にした状態で、

dir /s /a-d

/sパラメータででサブディレクトリすべてを検索
/a-dパラメータでディレクトリ以外のファイル(つまり属性に関係なくすべてのファイル

これを実行すると最後にファイルの個数とファイルサイズの合計を表示します。

もし、隠し属性のファイルは合計しないのであれば、

dir /s

だけで良いと思われます。

Qバッチファイルで昨日の日付を取得

すみません、どなたか教えて下さい。

バッチファイルの記述で、昨日の日付を取得する方法を教えて下さい。
今日の日付は下記のように取得しています。

rem 日時変数の取得
for /f "tokens=1-3 delims=/" %%a in ('echo %date:~-10%') do (set YYYYMMDD=%%a%%b%%c
)

Aベストアンサー

:: ----- prevdate.bat はじめ -----
@echo off
::今日の日付を取得
set yy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
echo 今日は、%yy%年%mm%月%dd%日です。

::1日前の日付を計算する
set /a dd=%dd%-1
set dd=00%dd%
set dd=%dd:~-2%
set /a ymod=%yy% %% 4
if %dd%==00 (
if %mm%==01 (set mm=12&& set dd=31&& set /a yy=%yy%-1)
if %mm%==02 (set mm=01&& set dd=31)
if %mm%==03 (set mm=02&& set dd=28&& if %ymod%==0 (set dd=29))
if %mm%==04 (set mm=03&& set dd=31)
if %mm%==05 (set mm=04&& set dd=30)
if %mm%==06 (set mm=05&& set dd=31)
if %mm%==07 (set mm=06&& set dd=30)
if %mm%==08 (set mm=07&& set dd=31)
if %mm%==09 (set mm=08&& set dd=31)
if %mm%==10 (set mm=09&& set dd=30)
if %mm%==11 (set mm=10&& set dd=31)
if %mm%==12 (set mm=11&& set dd=30)
)
echo 昨日は、%yy%年%mm%月%dd%日です。

echo.
pause
:: ----- prevdate.bat おわり -----

参考URL:http://www.atmarkit.co.jp/fwin2k/win2ktips/419batchdate/batchdate.html

:: ----- prevdate.bat はじめ -----
@echo off
::今日の日付を取得
set yy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
echo 今日は、%yy%年%mm%月%dd%日です。

::1日前の日付を計算する
set /a dd=%dd%-1
set dd=00%dd%
set dd=%dd:~-2%
set /a ymod=%yy% %% 4
if %dd%==00 (
if %mm%==01 (set mm=12&& set dd=31&& set /a yy=%yy%-1)
if %mm%==02 (set mm=01&& set dd=31)
if %mm%==03 (set mm=02&& set dd=28&& if %ymod%==0 (set dd=29))
if %mm%==04 (set mm=03&& set dd=31)
if...続きを読む

Qバッチ処理でファイルの中身を変数に入れるやり方

あるファイルの中には1行の文字列があります。
このファイルをバッチで読み取り、変数に設定したいです。

例:
test.txt
abcacbacbacbacbacbacbacbacb

test,bat
set DATA=[test.txtを読み込んだ値]

よろしくお願い致します。

Aベストアンサー

これですね。

参考URL:http://www.upken.jp/kb/dqvgHNRUxwFDkmtoqEwfXHUjDrevNv.html


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング