【问题标题】:Apply Linux command recursively to all files in directory of single (.sh) type将 Linux 命令递归地应用于单个 (.sh) 类型目录中的所有文件
【发布时间】:2014-11-18 08:37:12
【问题描述】:

我正在尝试将此命令 sed -i -e 's/\r$//' 应用于我尝试过的目录中的所有 Shell (.sh) 文件:

sed -i -e -R 's/\r$//' *.sh

但这会引发未知字符错误。

任何帮助都会非常高兴!

【问题讨论】:

  • 我在我能找到的任何手册页中都没有看到对 -R 参数的引用。那是什么旗子?

标签: linux shell command-line terminal directory


【解决方案1】:

这是一个参数顺序问题。 -e 期望表达式/脚本作为下一个参数,而您将其提供给 -R

交换这两个参数sed -i -e '....'

话虽如此,dos2unix 程序也是为此目的而存在的。

【讨论】:

  • @OtisWright 该标志来自您的帖子。您还会注意到我发布了一条评论询问它,因为我在任何地方都找不到它。
猜你喜欢
  • 1970-01-01
  • 2014-05-23
  • 2014-07-26
  • 2015-11-17
  • 2022-11-17
  • 2019-02-13
  • 2012-10-01
  • 2011-10-20
  • 2017-08-28
相关资源
最近更新 更多