Oddělovač CR v bashi
Ladislav Vaiz
spam na nagano.cz
Středa Září 11 08:33:38 CEST 2013
Psal jsem to v mailu, posílá teplotu sám po cca 10 sekundách. Takže mám
démona, co to ukládá do souboru a sonda z nagiosu testuje obsah a stáří
souboru.
L.
Milan Suchánek napsal(a):
> Zdravím,
>
>
> a tento Váš teploměr pasivně posílá data, nebo jde o variantu typu modul Quido s připojeným teploměrem, kde je na vyčítání teploty nutné po sériáku poslat nějaký příkaz. Toto je přímo postup od Papoucha, snad to pomůže:
>
>
> #!/bin/bash
>
> exec 4< /dev/ttyUSB1
> echo -en "$1\r" > /dev/ttyUSB1
> read -u 4 vystup
> echo $vystup
>
>
> s pozdravem
>
> Milan Suchánek
>
>
> 10. 9. 2013 v 20:47, Ladislav Vaiz:
>
>
>> Ahoj,
>> mám zařízení (Papouchovo teploměr), které posílá 1x za cca 10s po sériovém portu teplotu jako ASCII znaky zakončené CR. Jak to zpracovat ve skriptu?
>> Zkoušel jsem:
>> 1) Změnit je na LF přes tr '\r' '\n'. Na terminál funguje, do roury nic nevypíše, zřejmě bufferování výstupu, které neumím vypnout
>> 2) sed -u 's/\r/\n/' mi nefungoval. Možná napřed čeká na '\n' kvůli zpracování celé řádky?
>> 3) IFS=$'\r' cat /dev/ttyUSB | while read a; do echo $a; done mi taky nefungovalo.
>>
>> Nakonec jsem se naštval a vyřešil to programem v C, ale zajímalo by mě, jak na to v bashi.
>> Díky Láďa
>>
Další informace o konferenci Linux