1

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

Есть идеи?

1 ответ1

2

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

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

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

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

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

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .