• 締切済み

msdos for文 パスに!がある時の記述の仕方

C:\test\dataのフォルダに入っているファイルの数と 最も古いファイルのファイル名は リスト1で取得できますが、 パスに!が入っているC:\test\!dataでは、 リスト2のようにしても、for文の所で、 指定されたファイルが見つかりません。 と表示されてしまいます。 パスに!が入っている時は、 どのように記述すればよいのでしょうか。 ---リスト1------------------------------------ @echo off set folder="C:\test\data\" for /F %%a in ('dir %folder% /a:-d ^| find "個のファイル"') do set num=%%a echo ファイルは %num% 個あります。 for /F %%F in ('dir %folder% /b /o:-d') do set filename=%%F echo 一番古いファイルは %filename% です。 ---リスト1の実行結果-------------------------- ファイルは 50 個あります。 一番古いファイルは test100.txt です。 ---------------------------------------------- ---リスト2------------------------------------ @echo off set folder="C:\test\!data\" for /F %%a in ('dir %folder% /a:-d ^| find "個のファイル"') do set num=%%a echo ファイルは %num% 個あります。 for /F %%F in ('dir %folder% /b /o:-d') do set filename=%%F echo 一番古いファイルは %filename% です。 ---リスト2の実行結果-------------------------- 指定されたファイルが見つかりません。 ファイルは 50 個あります。 指定されたファイルが見つかりません。 一番古いファイルは test100.txt です。 ---------------------------------------------- (実行環境 : Windows7のコマンドプロンプト)

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

再現しません。 @echo offを取って、実行されているコマンドを確認しては?

  • NuboChan
  • ベストアンサー率47% (785/1650)
回答No.1

質問内容から推察するとカテゴリー的には、  下記のスレッド(カテゴリー)の方が良いのでは無いかと? その他(プログラミング・開発)  https://okwave.jp/c260.html -------------------

yam2012
質問者

お礼

そうですね。 その他(プログラミング・開発)の方がよかったと思います。 次からはこちらで質問するようにします。 ありがとうございました。

関連するQ&A