Ich glaube es ist eine ganz einfache Frage auf die ich trotz 6 stunden Suche keine Antwort gefunden habe. Es soll einfach die Ausgabedatei alle 10 Sekunden mit neuen Daten überschrieben werden, statt hinten anzufügen. Das ist alles. Mit > >> größer als hat nicht geklappt, die Daten werden trotzdem unten eingefügt.
1 2 3 4 5 6 | #!/bin/bash stty -F /dev/ttyUSB0 19200 sed -u '/Typ/,/Messzeit/d; /^A-Z/d; /^[ \t]*$/d; /\x00/d; s/,/./g' /dev/ttyUSB0 | awk '{OFS=",";$3+=0.9;$5+=3;$10+=1;$1=$2;$2=$3;$3=$4;$4=$5;$5=$6; $6=$7;$7=$8;$8=$9;$9=$10;$10=$11;$11=$12;$12=$13;$13=$14;$14=$15;$15=$16;$16=$17;$17=$18;$18=$19;$19=$20; $18/=10;$19=$19=($18*60*1.16)*($2-$3);$19=sprintf("%.0f",$19);$20=sprintf("%.2f",$19/365); print strftime("%Y/%m/%d--%H:%M:%S"",")$0;fflush()}' > /mnt/ramdisk/usb.log |
2024/10/29--22:22:19,033.0,35.5,030.3,20.2,010.3,013.4,051.8,034.5,13.8,050,050,099,030,111,166145153,024223160,4.5,23,8324,22.81 2024/10/29--22:22:29,033.0,35.5,030.4,20.2,010.3,013.4,051.8,034.5,13.9,050,050,099,030,111,166145173,024223165,4.6,23,8164,22.37 2024/10/29--22:22:39,033.0,35.5,030.4,20.2,010.3,013.4,051.8,034.5,13.8,050,050,099,030,111,166145193,024223170,4.5,23,8164,22.37 2024/10/29--22:22:48,033.0,35.5,030.4,20.2,010.3,013.4,051.8,034.5,13.7,050,050,099,030,111,166145213,024223175,4.6,23,8164,22.37 2024/10/29--22:22:58,033.0,35.5,030.4,20.2,010.3,012.8,051.8,034.5,13.9,050,050,099,030,111,166145233,024223180,4.7,23.2,8235,22.56 2024/10/29--22:23:07,033.0,35.5,030.4,20.2,010.4,012.6,051.8,034.5,14,050,050,099,030,111,166145253,024223180,4.7,23.2,8235,22.56 2024/10/29--22:23:17,033.0,35.5,030.4,20.2,010.4,012.6,051.8,034.5,13.9,050,050,099,030,111,166145268,024223185,4.5,23,8164,22.37
Es soll nur eine letzte Zeile zu sehen sein.