アプリ版:「スタンプのみでお礼する」機能のリリースについて

kで始まるディレクトリを削除しようとして、コマンドプロンプトで
rmdir /s /q k*
と打つと、
「ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。」
と言ってきます。
どうすれば、DOSコマンドで、kで始まるディレクトリをいっぺんに削除できますか。

WindowsXPです。

A 回答 (4件)

こんな方法もありますよ。


for /F %a in ('dir /AD /B /W k*') do rmdir /S /Q %a

XP限定ならば関係ないですけど、これならばどのWindowsでもいけるかと・・・
    • good
    • 3

ANo.#2の補足です。



バッチファイル内で、"for"コマンドを使う場合には、

for /d %%1 in (k*) do rmdir /s /q %%1

と、"%1"を"%%1"にします。

詳しくは、

for /?

で、"for"コマンドのヘルプを見て下さい。
    • good
    • 2

"rmdir"コマンドには、ワイルドカードが使えませんので、"for"コマンドと組み合わせて、ワイルドカードにマッチするディレクトリ名ごとに"rmdir"コマンドを実行するしかないのではないかと思います。



具体的には、

for□/d□%1□in□(k*)□do□rmdir□/s□/q□%1

(↑読みにくいですが、□は半角スペースです。□抜きだと、
for /d %1 in (k*) do rmdir /s /q %1
です。)
 
または、

for /d %1 in (k*.*) do rmdir /s /q %1

です。ディレクトリ名が半角のスペースを含む場合には、

for /d %1 in (k*) do rmdir /s /q "%1"

と、"rmdir"コマンドの方だけ、"%1"とダブルクォーティションで囲ってください。

なお、"for"コマンドの"/d"オプションは、『コマンド拡張機能』が有効になっていないと使えません。
(XPはデフォルトで『コマンド拡張機能』が有効になっているので、問題はないと思いますが、"/d"オプションが使えない時には、下記参考URLをご覧ください。)

『Windows XPスマートチューニング
 第95回コマンドプロンプトのコマンド拡張機能の設定を確認する』
http://pcweb.mycom.co.jp/column/winxp/095/

参考URL:http://pcweb.mycom.co.jp/column/winxp/095/
    • good
    • 1
この回答へのお礼

ありがとうございました。参考になりました。

お礼日時:2005/01/30 11:42

この場合、


rmdir k* /s /q
だと思いますが。

この回答への補足

ご回答のようにしても、
「ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。」
と言ってきます。

補足日時:2005/01/21 17:50
    • good
    • 0

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

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


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