借助git快速批量转换CRLF到LF

换行符的差异

  • windows下每行结尾为回车+换行(CR+LF),即 \r\n
  • unix和macOS下每行结尾为换行LF,即 \n
  • classic macOS(最后一个版本为1999年发布的Mac OS 9,可忽略)下为回车,即 \r

设置jetbrain系IDE

settings > Editor > Code Style > Line Separator > unix and macOS (\n)

批量转换crlf文件为lf

autocrlf是git的一个配置

git config core.autocrlf val

autocrlf = true 表示要求git在提交时将crlf转换为lf,而在检出时将crlf转换为lf autocrlf = false表示提交和检出代码时均不进行转换 autocrlf = input 表示在提交时将crlf转换为lf,而检出时不转换

(1) 借助git的这个特性可以进行批量转换

  1. 新建空白文件夹,复制需要转换的文件到此文件夹
  2. 初始化此文件夹为git仓库并提交
  3. 删掉全部文件,然后还原,新文件现在全部是lf换行
  4. 用新文件覆盖原来的
cd temp
git init
git config core.autocrlf true
git add .
git commit -m "init"
rm -rf *
git reset --hard HEAD

(2) 强大的 Dos2Unix 工具

下载地址: ​ ​https://waterlan.home.xs4all.nl/dos2unix.html#UNIX2DOS​​
以 Windows 为例,我选择红框标注的 zip

 下载后解压到你指定的目录, 然后记得在系统环境变量的 Path 中添加它的路径


转自: 
https://gist.github.com/atez/2d18cb9d60a98c0b198d41fef5d25ed2
https://blog.51cto.com/u_15458423/4808426
posted @ 2022-07-22 14:13  ck_2016  Views(2273)  Comments(0Edit  收藏  举报