質問するログイン新規登録

回答編集履歴

2

デバッグについて追記

2021/07/27 01:23

投稿

Crimson_Tide
Crimson_Tide

スコア509

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形式ファイル名削除処理について()内コメント付与 と軽微な修正

2021/07/27 01:23

投稿

Crimson_Tide
Crimson_Tide

スコア509

answer CHANGED
@@ -52,12 +52,12 @@
52
52
  D:\dev\teratail\351300\メインフォルダー>
53
53
  ```
54
54
 
55
- 下記フォルダにも"新しいフォルダー (01) "から "新しいフォルダ (20) "があります。
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
- D:\dev\teratail\351300\メインフォルダー>fsutil 8dot3name query c:
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
  レジストリをスキャンしています...