【问题标题】:Shell script for using dos2unix on directories and sub directories for KornShell用于在 KornShell 的目录和子目录上使用 dos2unix 的 Shell 脚本
【发布时间】:2011-06-29 04:57:53
【问题描述】:

dos2unix 将文件名作为参数。我需要使其通用,以便它可以获取一个文件或目录,然后在目录中递归搜索并将树结构中的所有文件从 dos 转换为 Unix。我正在使用 KornShell (ksh)。 请帮忙

谢谢。

【问题讨论】:

  • 使用查找命令:find path -type f -exec dos2unix {} \;
  • 它不适用于子目录,并且如果主目录中有子目录和一些文件。例如:如果我有一个目录 abc 并且它有目录 temp temp1 和文件 t1.txt t2.txt.那么这个命令不会覆盖所有子目录
  • 它至少在bash 中工作。你给主目录在path的地方吗
  • 尝试-maxdepth 选项。阅读man 1 find
  • 谢谢约翰。我附上脚本供您参考。请看这不起作用:(

标签: shell unix scripting ksh dos2unix


【解决方案1】:

使用find:

find file-path -type f -exec dos2unix {} \;

【讨论】:

  • 如何排除隐藏文件(以.开头,例如.git/)
【解决方案2】:

我在带有 KornShell 的 SunOS 5.10 上尝试了约翰王子的回答,但没有成功。

显然,因为dos2unix 命令缺少输出文件,所以它只打印到标准输出。

对他答案的修改对我有用。

find . -type f -exec dos2unix {} {} \;

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-23
  • 1970-01-01
  • 2021-03-05
  • 1970-01-01
  • 2017-01-12
相关资源
最近更新 更多