Похожие вопросы

Почему одинаковые файлы находятся в одном каталоге Windows 7?
Обрабатывать имя файла с пробелами внутри Bash-скрипта
извлечение файла со слишком длинным именем
Какие файлы/каталоги, правила именования в Linux?
В чем разница между filename и./ filename в Linux
OneDrive для бизнеса длинные имена файлов не будет тонуть на одном компьютере, хорошо на других
Mac OS: как я могу переименовать файл, например APP 001.gif в 01.gif?
Получить имя файла без расширения в Bash
Создание сценария BASH " для " обрабатывать имена файлов с пробелами (или обходной путь)
Как узнать имя и путь запущенного приложения gui на linux?
Порядок сортировки специальных символов в Проводнике Windows?
Как мне удалить часть имени файла для пакета файлов в Windows 8.1?
Как удалить пробелы из имен файлов и папок?
При переименовании, как я могу отключить Windows 7 выделяя все имя файла, когда я click'n'Drag через часть его?
Какие символы недопустимы для имени файла MS-DOS?

Как найти все файлы на Mac с именем файла, который является незаконным в Windows?

Я ищу скрипт или программное обеспечение, которое может проверять все файлы на Mac и сообщать об ограниченных/запрещенных символах, например / : * ? " | , с которым не может работать Windows.

какие идеи?

5
задан dbenham
источник

1 ответов

для поиска имен файлов с проблемными символами можно использовать find:

$ find / -regex ".*[<>/:*?|].*" -print

поместите все символы, которые вы хотите найти в квадратных скобках. Обратите внимание, что некоторые символы должны быть экранированы, потому что они имеют особое значение (например, 0-9 найдете все цифры, а не 0, и 9). В принципе, то, что вы указываете в двойных кавычках, является регулярным выражением, имена файлов которого должны соответствовать для печати.

вы можете создать файл, содержащий список всех файлов, как so:

$ find / -regex ".*[<>/:*?|].*" -print > problematic-files.txt

если вы используете -name вместо -regex, тогда вы можете указать основной шаблон оболочки (где * обозначает любое количество символов ? for one, and [...] выбора персонажей). Это менее гибко, но, вероятно, достаточно для ваших целей:

$ find / -name "*[<>/:*?|]*" -print > problematic-files.txt

(Я не уверен, что Mac OS имеет ту же функциональность поиска, что и GNU find, ту, которую я использую. Используйте "man find", чтобы получить руководство и выяснить, как использовать регулярные выражения или шаблоны оболочки с ним).

2
отвечен Pascal 2016-04-02 12:46:37
источник

Другие вопросы filenames filesystems macos windows