ここから本文です

コマンドプロンプトdirでの不思議

mam********さん

2012/2/2008:31:57

コマンドプロンプトdirでの不思議

あるディレクトリに次のテキストファイルが入っていたとします。

9 l.txt
test-b.txt
b.txt
bbb.txt
i m.txt

このディレクトリにおいてのdirの質問疑問です。

まずdir *b*
すると”9 l.txt”” i m.txt”も含め5つ全部が引っ掛かって表示されました。
次にdir *a*
すると“a”などないはずのディレクトリで”i m.txt”が表示されました。

きっと
*b*とか*a*とかプロンプト画面上に表示されている字を一度違う形にして検索してdir結果がでているのかなと推測を立てましたが・・・?
この辺の詳しい事お分かりの方ありましたら、教えて下さい。
お願いいたします。[Microsoft Windows [Version 6.0.6002]使用しています]

補足Pxb・さん、そういう動作をするcmdもあるということですね情報をどうも
Nas・さん、試して頂いたようで有難うございます特に設定は変えていません
installされているPowerShellでdirに該当しそうなGet-ChildItemで*b*そして*a*を試すと
共に「b」「a」がfile名に入ってないものは表示されず予想されるものだけが表示されました
コマンドプロンプトにおいてなぜ[該当されない字面のfileまで拾ってしまうのか]お分かりの方教えて下さい

i m.txt,9 l.txt,test-b.txt,ディレクトリ,bbb.txt,質問者,1.TXT i m.txt

閲覧数:
792
回答数:
2
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

nas********さん

編集あり2012/2/2120:51:38

私の環境では質問者さんの「推測通り」の結果になりました。

9 l.txt も i m.txt もdos形式のファイル名じゃないですよね。
ひょっとして dir /x で表示した時に上記ファイルのdos形式のファイル名に a とか b が入ってませんか?
dos形式のファイル名がヒットしちゃっているのではないかと。

もうひとつ、
環境変数 DIRCMD=/x とか設定されてませんか?
↑私のパソコンでこの設定したら、質問者さんと「同じ」結果になりました。

[補足]

よく確認してみたら私のパソコンでも質問者さんと同じ「推測通りでない」表示になっていました。
調べてみたところ、dirコマンドでワイルドカードを使うと8.3形式(dos形式)のファイル名も検索してしまうようです。
dir/x を実行すると、私のパソコンでは
9LB605~1.TXT 9 l.txt
IMBA65~1.TXT i m.txt
test-b.txt
と表示されます。
dir *b* が実行された際には「 9 l.txt」 だけでなく 「9LB605~1.TXT」 もワイルドカードの対象になるため *b* にひっかかってしまったようです。

↓関連記事です
http://www.atmarkit.co.jp/fwin2k/win2ktips/1200disable83/disable83....

質問した人からのコメント

2012/2/22 02:36:58

回答頂いたお二人有難うございました。
nasdnivcoopstdnyenozpmwujさん 補足でご指摘の通りのようです。
“9LB605~1.TXT[9 l.txt]” “IMBA65~1.TXT[i m.txt]”に含まれている*6*や*5*や*1*でも二つのファイルは引っ掛かってきました。快答ですね、すっきりしました。BAお受け取り下さい。

ベストアンサー以外の回答

1〜1件/1件中

pxb********さん

編集あり2012/2/2015:15:10

知ってる人間からすれば正常な動作ですよ。
*:アスタリスクは全てと言う意味があります。
*b*とすると最初の*だけで文字数に関係なく全部含まれます。
1文字だけ対称にする場合は?を使ってください。
?b*とすれば
1文字目が全ての文字。
2文字目がbの文字。
3文字目以降は文字数に関係なく全て。

*b*

12
123
1234
bの有無に関わらず全部該当してしまいます。

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる