Trong 5 năm, tôi sử dụng trạm thời tiết La Crosse WS2350. Dữ liệu được cung cấp bởi trạm thời tiết được xử lý với open2300 trên RPI. Điều này hoạt động rất tốt. Tuy nhiên, dữ liệu nhiệt độ là sai (cảm biến). Dữ liệu nhiệt độ thấp hơn 1 ° C.
Vì tôi không thể hiệu chỉnh cảm biến, tôi muốn thay đổi giá trị nhiệt độ từ tệp được trích xuất từ trạm thời tiết.
Tệp văn bản này (current.txt) chứa:
Date 2016-Dec-03
Time 10:30:29
Ti 11.9
Timin 11.6
Timax 27.7
TTin 10:34
DTimin 2016-01-19
TTimax 00:44
DTimax 2016-08-28
To -2.4
Tomin -4.8
Tomax 37.4
TTomin 06:46
DTomin 2016-02-18
TTomax 16:13
DTomax 2016-07-19
...
Tôi muốn thêm +1 vào các giá trị "To", "Tomin", "Tomax" và ghi đè tệp văn bản với các giá trị chính xác.
Sau khi nhìn vào các lệnh sed và awk, tôi nhận ra rằng mình đã lỗi thời. Ai có thể hướng dẫn cho tôi? Cảm ơn
Biên tập :
Tôi đã quên một tệp khác: ws2308.log Cứ sau 15 phút, một dòng mới được thêm vào tệp ws2308.log:
...
20161203150600 2016-Dec-03 15:06:00 11.8 -1.1 -3.2 65 87 0.0 157.5 SSE -1.1 569.80 1015.700
20161203152100 2016-Dec-03 15:21:00 12.3 -1.1 -3.2 64 87 0.0 157.5 SSE -1.1 569.80 1015.600
20161203153600 2016-Dec-03 15:36:00 12.2 -1.2 -3.3 64 87 0.0 135.0 SE -1.2 569.80 1015.700
Giá trị được sửa đổi là trường thứ 5 (-1,2 đầu tiên)
Cũng cần thiết là trên dòng cuối cùng, giá trị của nhiệt độ được tăng thêm 1 và ghi đè lên dòng cuối cùng với giá trị chính xác. Chỉ dòng cuối cùng sẽ được tính đến bởi chương trình php cho phép hiển thị kết quả trong biểu đồ.
Cảm ơn