Странное поведение команд Windows DIR
Я обнаружил это совершенно случайно, когда искал файл с номером в названии. Когда я печатаю:
dir
*
number*
(где число представляет любое число от 0 до 9 и без пробелов между звездочками и числом)
в командной строке cmd.exe он возвращает различные файлы, которые не отображаются ни в одном из них, чтобы соответствовать критериям поиска. Что странно, так это то, что в зависимости от каталога одни номера будут работать, а другие - нет. Например, в каталоге, связанном с веб-сайтом, я набираю следующее:
dir *4*
и что возвращается:
Directory of C:\Ampps\www\includes\pages 04/30/2012 03:55 PM 153 inventory_list_retrieve.php 06/18/2012 11:17 AM 6,756 ix.html 06/19/2012 01:47 PM 257,501 jquery.1.7.1.js 3 File(s) 264,410 bytes 0 Dir(s) 362,280,906,752 bytes free
Это просто не имеет никакого смысла для меня. Любая подсказка?
Вопрос ставится на stackOverflow, потому что команда DIR часто сочетается с FOR в пакетных программах. Странное поведение DIR может сделать пакетные программы потенциально ненадежными, если они используют команду DIR.
Изменить: (дополнительная заметка). Хотя прошло много времени, я обнаружил еще одну причуду, которая почти стоила мне много работы. Я хотел удалить все.htm
файлы в определенном дереве каталогов. Я понял, прежде чем сделать это, что*.htm
Матчи.html
файлы также. Также,*.man
Матчи.manifest
и есть, вероятно, другие. Удаление всех.html
файлы в этом конкретном каталоге были бы расстроены, если не сказать больше.