接受标准输入,然后写入日期时间戳文件的程序?

Ama*_*rus 3 unix pipe dump log-rotation

我想知道有没有一个程序可以做我想做的事。这就像一个流式日志轮换程序。对于 linux/unix 命令行。

假设我有一些输入正在传输一些数据。我想把它写一个文件,但是每天(或小时或其他)一个不同的文件,即打开一个具有指定日期时间模式的文件,并将 stdin 的内容写入该文件。当一天更改(或小时或分钟,或星期等)时,关闭该文件,然后重新打开一个新文件(将有一个新文件名),然后将行写入该文件?

所以像:

my long | process | that's generating | input | datestampfilewriter --daily 'output.%Y-%m-%d.txt'
Run Code Online (Sandbox Code Playgroud)

这个工具存在吗?

Zor*_*che 5

您可以使用cronolog

cronolog 是一个简单的过滤程序,它从标准输入读取日志文件条目,并将每个条目写入由文件名模板和当前日期和时间指定的输出文件。当扩展的文件名更改时,当前文件将关闭并打开一个新文件。