回答編集履歴
2
デバッグについて追記
answer
CHANGED
@@ -117,4 +117,12 @@
|
|
117
117
|
1 個のディレクトリ 280,837,193,728 バイトの空き領域
|
118
118
|
|
119
119
|
C:\test\teratail\メインフォルダー>
|
120
|
+
```
|
121
|
+
---
|
122
|
+
**追記**
|
123
|
+
for文などで変数を取り扱う際や renやmoveなど変更が伴う処理は、まずは変数だけechoしたり、変更処理の頭にechoつけて意図したコマンドになっているか確認した上で、echoを外して実行することをお勧めします。
|
124
|
+
```dos
|
125
|
+
echo "%%x"
|
126
|
+
@rem echo "%%x" | find %SEARCHTEXT% >NUL
|
127
|
+
echo ren "%%x" "%before%%N:~-2%%after% %SEARCHTEXT%"
|
120
128
|
```
|
1
8.3形式ファイル名削除処理について()内コメント付与 と軽微な修正
answer
CHANGED
@@ -52,12 +52,12 @@
|
|
52
52
|
D:\dev\teratail\351300\メインフォルダー>
|
53
53
|
```
|
54
54
|
|
55
|
-
|
55
|
+
”C:\test\teratail\メインフォルダー”にも"新しいフォルダー (01) "から "新しいフォルダ (20) "があります。
|
56
56
|
Cドライブはデフォルトで8dot3 ファイル名が有効になっている((8dot3 name creation is enabled).)ので 新しいフォルダー (12) も検出されてしまいます。
|
57
57
|
新しいフォルダー (12)の 8.3形式の名前が ”新0154~1”となっているので、恐らくこの01にマッチして表示されているのでしょう。
|
58
58
|
|
59
59
|
```dos
|
60
|
-
|
60
|
+
C:\test\teratail\メインフォルダー>fsutil 8dot3name query c:
|
61
61
|
The volume state is: 0 (8dot3 name creation is enabled).
|
62
62
|
The registry state is: 2 (Per volume setting - the default).
|
63
63
|
|
@@ -79,7 +79,7 @@
|
|
79
79
|
|
80
80
|
|
81
81
|
カレントフォルダだけ8.3 形式のファイル名を削除すると、dir /x *01* を実行しても”新しいフォルダー (12)”が検出されなくなりました。
|
82
|
-
(. 指定ではなく絶対パスの方が安心かな )
|
82
|
+
(. 指定ではなく絶対パスの方が安心かな 。 @ITのリンク先にもあるように『まず/tオプション(テスト・モードの指定)を付けてテストしてから行うのが望ましい。』をすべきでした)
|
83
83
|
```dos
|
84
84
|
C:\test\teratail\メインフォルダー>fsutil 8dot3name strip /v /s .
|
85
85
|
レジストリをスキャンしています...
|