linux - linux日期生成log4j时间戳格式

标签 linux logging rsyslog

我想使用 linux 日期模仿 log4j 中使用的时间戳格式(只是一些快速脚本)

在 log4j 上,格式定义为 %d{dd MMM yyyy HH:mm:ss,SSS} 这将转化为如下行:

2016-03-10 07:01:09,778
2016-03-10 07:01:09,784

这能及时完成吗?我越接近使用

date +"%Y-%m-%d %H:%M:%S,%N"

但这仍然有 9 位数字而不是 3 位,有什么想法吗?我宁愿不使用 sed/cut 等,但如果别无选择,那也没关系。

最佳答案

%N 给出的是纳秒数(每秒十亿),因此是九位数,而 GNU date 没有毫秒选项。

谢天谢地,我们可以像这样指定字段宽度

date +"%Y-%m-%d %H:%M:%S,%3N"

将十亿分之一变成千分之一。

M.

关于linux - linux日期生成log4j时间戳格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35939181/

相关文章:

c - 如何并行 mmap 以加快文件读取速度?

linux - ifconfig 似乎不同意 Centos 网络连接偏好

syslog - 每周在一周中的特定一天进行 Logrotate?

configuration - rsyslog 有条件的 RepeatedMsgReduction

linux - 如何将 Python 哈希插入 sed 查询并写入文件?

apache - 不错的远程 apache 日志查看器

Java日志记录: console vs.文件输出

azure - 无法让嵌套的 StartOperation 显示在筛选器下拉列表中

linux - 如何查找某个进程正在操作哪些文件?

linux - 使用 lsusb 数据确定 USB 是否已挂载