linux - 在没有dos2unix的情况下递归地转换目录和子目录中所有文件的所有EOL(dos-> unix)

标签 linux bash unix command-line end-of-line

如何 dos2unix 递归地转换目录和子目录中所有文件的所有 EOL (dos->unix)? (我没有,无法安装。)

有没有办法使用 tr -d '\r' 和管道来做到这一点?如果是,怎么办?

最佳答案

对于当前目录中的所有文件,您可以使用 Perl 单行代码:perl -pi -e 's/\r\n/\n/g' *(从 here 中窃取) )

编辑:稍作修改即可进行子目录递归:

find | xargs perl -pi -e 's/\r\n/\n/g'

关于linux - 在没有dos2unix的情况下递归地转换目录和子目录中所有文件的所有EOL(dos-> unix),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10629231/

相关文章:

c++ - 编译 OGRE 教程示例时出现问题。

linux - 是否可以对文件夹应用计数功能,然后在文件夹超出限制时删除文件?

c - 如何获取字符串的 ASCII

unix - 计算 Go 中文件的硬链接(hard link)

bash - 使用 sed 命令在文件中添加带反斜杠的字符串

bash - 打印所有环境变量但跳过多行变量

python subprocess.check_output 在 cat | 时不返回grep组合

linux - 我如何使用until循环读取文本文件(bash shell)

c - 运行没有缓存的程序

mysql - 通过 -find -exec 将 SQL 管道传输到 mysql