pikorembo С этим соглашусь -
если мы встречаемся с техническим ограничением ОС то программы обязаны его соблюдать, равно как и её спецификации, правда увы но часто сама Микрософт этого не делает. Буквально на днях с этим столкнулся в очередной раз - приятель принёс флешку с работы, там важный для него документ созданный в Word 2013 а ... дома ни Word, ни шелл его не читают "Неправильное имя или путь к файлу или он не существует".
Он ко мне, глянул - а там забава в квадрате с хвостиком - Ворд как истинный балбес взял в качестве имени файла заголовок документа, а приятель набивая его случайно в конце фразы таб а следом и пробел нажал. Говорит по телефону позвонили, но ворд честно это имя файлу и влепил, итог понятен.
Кстати, в том же Far для борьбы с сим "злом" есть пара плагинов, вернее один но в двух вариантах - бинарник (DLL) и его Lua версии -
FIN (Fix Incorrect Names),
LF_FIN (LuaFAR FIN) и его развитие FIN alt (Lua) так что народ вынужденно с ошибками Микрософт борется и надо сказать успешно ибо есть грубый баг в ОС который специально не исправляют, но жить-то надо.
Benchmark Pasha_ZZZ С обоими соглашусь
EugeneRoshal а что до уборки концевых - лидирующих пробелов то может стоит просто вопрос задавать и предупреждать о возможных альтернативах:
1) искажение имени файла/каталога;
2) невозможность открыть файл/каталог в некоторых программах;
2) возможном сбое в работе программ использующих лидирующие/концевые пробелы в именах файлов при их удалении и только получив подтверждение оператора убирать их, а нет генерировать для таких файлов хардлинки с "правильными" именами? Расход дискового пространства одна запись файла (0,5 - 8 КБ на файл/каталог), зато головной боли значительно меньше. Я думаю, что самый разумный вариант это генерация хардлинков как основной способ устранения подобных конфликтов, а переименование файлов это крайняя мера.