python工程,kafka消息对接转换成配置文件并完成类似看门狗监控linux系统进程,定期清理日志
wangrong
2025-04-05 88f9100edcba9581214c1a0acc23cd33a821a9c6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
def compare_files_with_rtspurl(a_file, b_file, c_file):
    """
    比较A文件和B文件,将A文件中id在B文件中存在的行修改为B文件中的rtspurl并写入C文件。
 
    :param a_file: A文件路径
    :param b_file: B文件路径
    :param c_file: C文件路径
    """
    # 读取B文件,提取id与rtspurl的映射
    b_data = {}
    with open(b_file, 'r', encoding='utf-8') as b:
        for line in b:
            parts = line.strip().split()
            if len(parts) >= 6:
                b_data[parts[4]] = parts[0]  # 以id为键,rtspurl为值
 
    # 筛选A文件中id在B文件中的行,并替换为B文件的rtspurl
    with open(a_file, 'r', encoding='utf-8') as a, open(c_file, 'w', encoding='utf-8') as c:
        for line in a:
            parts = line.strip().split()
            if len(parts) >= 6 and parts[4] in b_data:
                parts[0] = b_data[parts[4]]  # 替换rtspurl
                c.write(" ".join(parts) + "\n")
 
if __name__ == "__main__":
    # 定义文件路径
    a_file_path = "cameralist.txt"
    b_file_path = "temp.txt"
    c_file_path = "result.txt"
 
    # 调用函数进行比较
    compare_files_with_rtspurl(a_file_path, b_file_path, c_file_path)