gpt4 book ai didi

unix - 使用 sed 将时间戳转换为日期时间

转载 作者:行者123 更新时间:2023-12-05 00:47:14 25 4
gpt4 key购买 nike

我有一个日志文件,里面的每一行都是这样的:

timestamp=1356431101, entity=xxx, event: xxxxxx

现在我想使用 sed 将时间戳替换为人类可读的日期时间:

timestamp=2012-12-24 10:00:00, entity=xxx, event:xxxxx

我的命令是:

sed "s/^timestamp=\([0-9]\{10\}\),/timestamp=\`date +%D --date=@\1\`,/"

但问题是 \1 不能用 10 位时间戳代替,而是始终被视为数字 1。谁能告诉我如何解决这个问题?提前谢谢!

最佳答案

试试

cat test.txt | sed 's/^/echo "/; s/\([0-9]\{10\}\)/`date -d @\1`/; s/$/"/' | bash

关于unix - 使用 sed 将时间戳转换为日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14036116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com