質問: ### 発生している問題・エラーメッセージ コマンドプロンプトであるフォルダーに対し「dir AAF*」で検索をかけた際にAAF~以外にもAA3~やAAR~といったファイルがヒットしてしまう (AAFxxx_yyyymmddやAA3xxx_yyyymmddといったようなファイルがフォルダ内に存在する形です。 平日分のファイルが存在しているイメージです。 ヒットしているAAR等のファイル内にAAFの記載もありませんでした。) ### 該当のソースコード コマンドプロンプトにて以下コマンドを実施 dir AAF* ### 試したこと dir AAFxxx* で検索すると欲しいAAFxxxのファイル類がヒットします。 ファイルの確認としては試したことにある記載で確認できたため問題ありませんが、疑問に思ったため質問させていただきました。 宜しければ回答お願いいたします。
回答: 8.3形式(短形式)のファイル名が有効になっているのでしょうかね。 詳しくは、「Windows 8.3形式」で検索してください。 8.3形式の名前は、`dir /x`で表示されます。 ``` D:\>dir /x C:\ ・・・ C:\ のディレクトリ 2019/12/07 18:14 PerfLogs 2021/01/09 23:37 PROGRA~1 Program Files 2021/01/09 23:35 PROGRA~2 Program Files (x86) 2021/01/09 23:09 Temp 2021/01/09 23:38 Users 2021/01/12 05:40 Windows ・・・ ``` のように、`Program Files`に`PROGRA~1`という別名が付いています。 なので、`dir C:\*1`で`Program Files`が表示されます。 Windows95が出た頃に読んだ失敗談では、「`*.htm`のファイル名を`*.html`に移行して、元の`*.htm`ファイルを消そうとして`del *.htm`を実行したら`*.html`まで全部消えた」。 デフォルトは忘れましたが、確かWindows10だとCドライブのみ有効のはず。 管理者権限のコマンドプロンプトで`fsutil 8dot3name query C:`で確認できます。 8.3形式をCドライブで無効にした場合の影響は不明。確定申告電子申告のためのソフトをインストールすると、`PATH`に`C:\PROGRA~1\JPKI`が追加されます。 Cドライブ以外は無効で大丈夫だと思います。