将时间戳添加到从标准输入接收的每一行是一个常见的编程任务,通常用于记录日志或处理实时数据流。下面我将详细解释这个过程的基础概念、优势、类型、应用场景,并提供示例代码来解决这个问题。
下面是一个使用Python将时间戳添加到从标准输入接收的每一行的示例代码:
import sys
from datetime import datetime
def add_timestamp(line):
timestamp = datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')[:-3] # 获取当前时间戳,精确到毫秒
return f"{timestamp} {line}"
if __name__ == "__main__":
for line in sys.stdin:
print(add_timestamp(line.strip()))
sys
模块用于读取标准输入。datetime
模块用于获取和处理时间戳。add_timestamp(line)
函数接收一行文本,并在其前面添加当前时间戳。for line in sys.stdin
循环读取标准输入的每一行。add_timestamp(line.strip())
函数处理每一行,并打印结果。假设你有一个文本文件input.txt
,内容如下:
Hello, world!
This is a test.
你可以使用以下命令运行脚本并传递文件内容作为输入:
cat input.txt | python add_timestamp.py
输出将会是:
2023-10-05 14:30:00.123 Hello, world!
2023-10-05 14:30:00.124 This is a test.
通过这种方式,你可以轻松地为从标准输入接收的每一行数据添加时间戳,以便更好地进行日志记录和分析。
领取专属 10元无门槛券
手把手带您无忧上云