
Raspberry Pi의 Bluetooth 저에너지 온도계에서 데이터를 추출하여 MQTT 서버에 전달하고 있습니다. Python에서 이 작업을 수행할 수 있지만 몇 가지 명령줄 스크립팅(Bash)을 배우고 싶지만 잘 모르겠습니다. 어디서 시작하나요.
내가 내린 명령은
gatttool -b A4:C1:38:40:15:51 --char-read --handle=0x000e
연결이 설정되었다고 가정하면 답변이 텍스트로 표시됩니다.
Characteristic value/descriptor: 47
문제는 선을 분할하고 값(0x47)을 추출하려면 어떤 도구를 검색해야 합니까?
나에게 코드를 제공하지 마세요그러나 검색하고 실행하여 학습할 수 있도록 사용할 명령에 대한 힌트가 있습니다. :-) $?
반환 값을 이해할 만큼 충분히 배웠으므로 이것이 if
오류 처리의 다음 단계입니다.
검색 결과가 나왔기 때문에 이 작업을 수행할 수 있는 방법이 여러 가지 있다는 점에 감사드립니다. (이 질문을 읽을 수 있는 독자보다 한 명이 더 많다고 생각합니다.)sed,앗그리고진주하지만 때로는 터널을 찾고 마지막에 빛을 찾기 위해 Linux 산으로 향하는 방향이 필요합니다. :-)
답변1
스크립팅을 배우려면 가장 일반적인 도구와 일부 bash
특정 구문을 배워야 합니다.
여기에 필요한 것은 다음과 같습니다.
bash
:
variable=$(command)
명령의 출력(STDOUT)을 변수에 넣습니다.
echo "$variable"
변수의 내용을 인쇄합니다.
command1 | command2
출력을 command1
입력으로 사용command2
여기서 유용한 명령은 다음과 같습니다.
cut
sed
grep
(아마도)
의 경우 sed
정규식을 자세히 살펴봐야 합니다. 스크립팅을 진지하게 받아들이면 시간 낭비가 아닙니다. 정규식(우리가 애칭으로 부르는)에 대한 정보의 양이 감당할 수 없을 정도로 많다면, 여기에서 본 많은 답변을 통해 정규식에 대한 새로운 사실을 다시 한 번 배울 수 있다는 점을 알아 두는 것이 좋습니다.