【问题标题】:Using Tail Recursively in Linux to Output into Individually Files在 Linux 中递归使用 Tail 输出到单独的文件中
【发布时间】:2014-04-03 01:54:35
【问题描述】:

我正在尝试递归(使用子目录)读取特定类型(*.log)的每个文件的最后一行,并将输出写入每个 *.log 文件的单独文件中

例如(tail_"文件名")。

我能够拼凑的最接近的代码如下。但是,我需要将信息发送到它运行 tail 命令的每个实例的文件中。

find -type f | while read filename; do tail -1 $filename; done

【问题讨论】:

  • 如果示例文件是 dir1/dir2/file.txt - 对应的尾文件的路径是什么?
  • @user3490469:请编辑您的问题以改进它。

标签: linux recursion find


【解决方案1】:

您的解决方案几乎完成了。只需添加> ${f}.tail 即可创建尾部文件:

find . -type f | while read f;do tail -1 $f > ${f}.tail;done

【讨论】:

    【解决方案2】:

    另一种可能是

    find . -type f -exec sh -c "tail -1 '{}' > '{}'.tail"  \; 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-21
      • 2011-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-22
      相关资源
      最近更新 更多