Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Windows [игнор отключен] [закрыт для гостей] / мля... / 13 сообщений из 13, страница 1 из 1
10.06.2015, 10:26
    #38980821
злой2015
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
Честное слово, по-другому никак тему не назовёшь.

Столкнулся с каким-то уродством со стороны мелкомягких, и не знаю как от него избавиться. В интернете ничего похожего не нашёл. Может тут кто поможет. (пробовал в нескольких версиях Windows, результат одинаковый).

В папке шесть файлов:

test1.dot
test1.dota
test2.dot
test2.dota
test3.dot
test3.dota

Выполняем команду:

dir *.dot /b

test1.dot
test1.dota
test2.dot
test2.dota
test3.dot
test3.dota

Результат какой-то странный. Вывелись все файлы, хотя интересовали именно с расширением ".dot"

Пробуем так:

dir *1.dot /b

test1.dot
test1.dota
test2.dota
test3.dota

Результат просто ахренительный! Причём тут вообще два последних файла??? В их именах нигде нет "1".

Однако следующая команда выполняется абсолютно правильно:

dir *2.dot /b

test2.dot


Собственно меня интересует вопрос: как же задать маску файлов, чтобы получить только *.dot (три буквы в расширении)?
Ну и желательно узнать что за ерунда с маской *1.dot? А то может быть это не единственный касяк...
...
Рейтинг: 0 / 0
10.06.2015, 10:59
    #38980876
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
MS тут не при чём. Причина - в твоём полном непонимании того, что ты ДЕЛАЕШЬ. А оно сильно отличается от того, что ты ХОЧЕШЬ.
У команды DIR есть ключики /N и /X - они помогут тебе понять, что происходит...
...
Рейтинг: 0 / 0
10.06.2015, 11:10
    #38980890
злой2015
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
Akina, и чем же "*1.dot" так отличается от "*2.dot" ???


dir *1.dot /b /n
test1.dot
test1.dota
test2.dota
test3.dota

dir *1.dot /b /x
test1.dot
test1.dota
test2.dota
test3.dota

dir *1.dot /b /n /x
test1.dot
test1.dota
test2.dota
test3.dota

Найди десять отличий.

Прежде чем умничать, проверяй свои рекомендации.
...
Рейтинг: 0 / 0
10.06.2015, 11:40
    #38980929
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
Akina,

объясните, где есть описание происходящего? мне, как программисту, непонятны критерии такого поиска.
я полагаю, что *1.dot - это найти все имена файлов, которые начинаются с любых символов и заканчиваются на 1.dot.
При этом я вижу, что dir работает вовсе не так, и в гугле объяснение этому феномену найти не могу.

p.s. да, мля, смешно, с компами работаю с 1987 года, а на такой прикол обращаю внимание первый раз.
...
Рейтинг: 0 / 0
10.06.2015, 11:47
    #38980936
злой2015
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
kdv,
Akina обращает внимание на то, что есть ещё и короткие имена файлов

dir *1.dot /x

test1.dot
TEST1~1.DOT test1.dota
TEST2~1.DOT test2.dota
TEST3~1.DOT test3.dota

как видно, короткое имя файла попало под шаблон *1.dot.

Но вопрос в том, как же заставить сравнивать только длинные имена файлов?
...
Рейтинг: 0 / 0
10.06.2015, 12:01
    #38980962
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
злой2015Akina обращает внимание на то, что есть ещё и короткие имена файлов
тьфу, черт. спасибо. а я уж думал все, мир рухнул :-)

как для dir задать поиск только по длинным именам - не нашел.
...
Рейтинг: 0 / 0
10.06.2015, 12:17
    #38980977
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
...
Рейтинг: 0 / 0
10.06.2015, 12:23
    #38980981
Павел Воронцов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
kdv,

Код: sql
1.
@for %f in (*.dot) do @if "%~xf"=".dot" @echo %f

Коряво, но делает то, что ты хочешь.
...
Рейтинг: 0 / 0
10.06.2015, 12:36
    #38980989
злой2015
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
Павел Воронцов
Код: sql
1.
@for %f in (*.dot) do @if "%~xf"=".dot" @echo %f

Коряво, но делает то, что ты хочешь.

на мой взгляд это лучше, чем dir *.dot | findstr /i ".dot$"
...
Рейтинг: 0 / 0
10.06.2015, 12:53
    #38981014
злой2015
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
эврика!

forfiles /M *.dot

"test1.dot"
"test2.dot"
"test3.dot"


forfiles /M *1.dot

"test1.dot"
...
Рейтинг: 0 / 0
10.06.2015, 15:40
    #38981267
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
Код: plaintext
fsutil 8dot3name set 1
А в семёрке ещё и:
Код: plaintext
format ... /s:disable
рулили, рулят и будут рулить.
...
Рейтинг: 0 / 0
10.06.2015, 18:31
    #38981512
----***----
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
Юниксоиды смотрят с недоумением....
...
Рейтинг: 0 / 0
10.06.2015, 18:42
    #38981525
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
мля...
----***----Юниксоиды смотрят с недоумением....При чём тут юниксоиды? На любой ФС, имеющей более одного пространства имён, будут те же траблы, вне зависимости от ОС.
...
Рейтинг: 0 / 0
Форумы / Windows [игнор отключен] [закрыт для гостей] / мля... / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]