【发布时间】:2020-07-21 22:33:46
【问题描述】:
我正在使用 Linux。我有一个目录树,其中包含超过 100,000 个源自 MS Windows 系统的文件。有些文件的名称中有空格。我想将这些文件转换为 unix。我运行了这个命令
find . -type f | xargs -0 dos2unix
并收到此错误消息
xargs: argument line too long
我该如何解决这个问题?
【问题讨论】:
-
xargs -0你为什么用-0? -
因为某些文件的名称中有空格。如果我不使用-0,则该命令无法正常工作。
-
在查找中不需要
-print0吗? -
在 Microsoft Windows 上,您可能需要使用“-s”,如:“xargs -0 -s 20000”(有关详细信息,请参阅手册页)...我多年前就知道了由于 msysgit 中的错误:github.com/msysgit/git/pull/354#issuecomment-106244339