- 締切済み
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のコマンドプロンプト)
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10358)
再現しません。 @echo offを取って、実行されているコマンドを確認しては?
- NuboChan
- ベストアンサー率47% (785/1650)
質問内容から推察するとカテゴリー的には、 下記のスレッド(カテゴリー)の方が良いのでは無いかと? その他(プログラミング・開発) https://okwave.jp/c260.html -------------------
お礼
そうですね。 その他(プログラミング・開発)の方がよかったと思います。 次からはこちらで質問するようにします。 ありがとうございました。