Изменение EOL на нескольких файлах за один раз

есть ли способ в Notepad++ (или даже с другим инструментом) изменить строку, заканчивающуюся автоматически на нескольких файлах за один раз?

т. е. преобразование смеси windows EOL (CRLF) и UNIX EOL (LF) файлы должны быть все Windows EOL (CRLF)

6 ответов


на заменить диалог может обрабатывать расширенные символы, такие как EOL. Просто измените "режим поиска" на "расширенный", и вы можете работать с EOL (\r\n в Windows или \N в Unix), вкладками (\t) и т. д.

вы также можете использовать найти в файлах вкладка диалогового окна для замены нескольких файлов.

Screenshot


У меня есть Notepad++ 6.1.2.
В меню " Редактировать "у вас есть" преобразование EOL", которое делает именно то, что вам нужно.


используйте функцию "Найти в файлах" (Ctrl + Shift + F). Измените режим поиска в левом нижнем углу на "регулярное выражение".

в поле "найти что" используйте этот шаблон:

(?<!\r)\n

заменить на:

\r\n

выберите каталог и укажите фильтры любого типа файлов. Проверьте "во всех подпапках", если хотите. Нажмите "заменить в файлах".

это заменяет любые символы новой строки (\n), которым в настоящее время не предшествует возврат каретки (\r) с \r\n. Таким образом, он не будет соответствовать окончаниям строк, которые уже являются стилем Windows.

enter image description here


использовать заменить все регулярным выражением

(\r?\n)|(\r\n?)

to

\r\n

это будет соответствовать каждому возможному шаблону окончания строки (single \r, \n или \r\n) обратно в \r\n (Windows).

для работы с несколькими файлами, либо:

  • используйте" заменить все во всех открытых документах "на вкладке" заменить". Сначала вам придется перетащить все файлы в Notepad++. Хорошо, что у вас будет контроль над тем, с каким файлом работать, но может быть медленным, если там несколько сотен или тысяч файлов.
  • "заменить в файлах" на вкладке "найти в файлах", фильтром файлов по вашему выбору, например, *.СРР.* cs под одним указанным каталогом.

нашел это решение через обсуждение:

вы также можете установить EOL по умолчанию в notepad++ через "настройки" - > "Настройки" - > "новый документ / каталог по умолчанию" затем выберите "В Unix/OSX с" под окно "Формат".

Примечание: всегда можно использовать внеполосную опцию, используя командную строку:

unix2dos *.cmd
dos2unix *.sh

только работающего решение, которое я нашел для нескольких файлов / папок, после googling в течение 1 часа:

  • установить PyCham пробном режиме,
  • откройте и выберите папку/папки проекта и следуйте скриншоту

enter image description here