dos2unix 批量转化文件

Posted 多选

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dos2unix 批量转化文件相关的知识,希望对你有一定的参考价值。

在windows和linux双平台下开发,同时也用git作为同步工具,但前期没有注意,导致很多文件使用windows下的换行符CRLF

参考资料了解dos2unix可以转化格式。

但有个问题,虽然可以对文件夹直接操作,但不能处理文件夹中子文件夹文件

查了些,还是不知道如何列出windows子文件路径。因此打算直接使用python遍历文件夹下所有文件,调用命令行dos2unix处理文件。下面是python的代码

 

import subprocess

def run_cmd_async(shell_str):
    """非堵塞,调用命令行, 返回类变量,需自行获取运行结果"""
    shell_result = subprocess.Popen(shell_str, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    return shell_result
import os

def grc_run(src):
    for f in os.listdir(src):
        raw_path = os.path.join(src, f)
        if os.path.isdir(raw_path):
            grc_run(raw_path)
        else:
            print(raw_path)        
            run_cmd_async("C:\Program Files\Git\usr\bin\dos2unix.exe" -k + raw_path)

1.上面的  "C:\Program Files\Git\usr\bin\dos2unix.exe"  是我自己电脑dos2unix路径,请各位修改。

2.保持文件时间戳不变,加上-k参数

grc_run(./)

最后运行python代码,指定需要转化的文件夹路径。上面代码是转化当前文件夹。

以上是关于dos2unix 批量转化文件的主要内容,如果未能解决你的问题,请参考以下文章

使用dos2unix批量转换文件

使用dos2unix批量转换文件

使用dos2unix批量转换文件

DOS和UNIX文本文件之间相互转换的方法&批量

文本转化工具dos2unix

为啥wc -l少数一行文件,里面应该60行 ,输出59?转化dos2unix之后,问题依然存在,求指点