一次性更改多个文件的EOL

时间:2012-07-05 09:38:59

标签: notepad++ batch-processing eol

Notepad ++(或者甚至是其他工具)是否有任何方法可以一次性更改多个文件上的行

即。将Windows EOL(CRLF)和UNIX EOL(LF)文件的混合转换为所有Windows EOL(CRLF

7 个答案:

答案 0 :(得分:89)

替换对话框可以处理EOL等扩展字符。只需将“搜索模式”更改为“扩展”,即可使用EOL(Windows中的\ r \ n或Unix中的\ n),制表符(\ t)等。

您还可以使用对话框中的在文件中查找标签来替换多个文件。

Screenshot

答案 1 :(得分:88)

我有Notepad ++ 6.1.2 在“编辑”菜单中,您可以进行“EOL转换”,完全符合您的需要。

答案 2 :(得分:58)

使用“在文件中查找”功能(Ctrl + Shift + F)。将左下角的搜索模式更改为“正则表达式”。

在“查找内容”框中,使用以下模式:

(?<!\r)\n

替换为:

\r\n

选择您的目录并指定任何文件类型过滤器。如果需要,请选中“在所有子文件夹中”。点击“替换文件”。

这样做是用\ r \ n替换当前不带回车符(\ r)的任何换行符(\ n)。因此它不会匹配已经是Windows风格的行结尾。

enter image description here

答案 3 :(得分:4)

将all all替换为正则表达式

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

\r\n

这会将每个可能的行结束模式(单个\ r,\ n或\ r \ n)匹配回\ r \ n(Windows)。

要对多个文件进行操作,请执行以下操作:

  • 在“替换”选项卡中使用“全部打开文档中的全部替换”。您必须先将所有文件拖放到Notepad ++中。您可以控制要对哪个文件进行操作,但如果有数百或数千个文件,则可能会很慢。
  • “在文件中查找”选项卡中的“替换文件”,由您选择的文件过滤器,例如,* .cpp * .cs在一个指定目录下。

答案 4 :(得分:3)

我在多个文件/文件夹中找到的唯一 WORKING 解决方案,在google搜索1小时后就是:

  • 安装PyCham试用模式,
  • 打开并选择您的项目文件夹/文件夹,然后按照屏幕截图

enter image description here

答案 5 :(得分:1)

通过此discussion找到此解决方案:

  

您还可以通过“设置” - &gt;在记事本++中设置默认EOL。   “偏好” - &gt; “新建文档/默认目录”然后选择   格式框下的“Unix / OSX”。

注意:可以使用命令行始终使用带外选项:

unix2dos *.cmd
dos2unix *.sh

答案 6 :(得分:0)

将多个文件递归转换为一个目录。只需在Notepad ++上安装PythonScript,然后使用下面的脚本

https://gist.github.com/bjverde/583c2ee8b386994f3a1f8acdea3b7ed2