2016-10-13 13 views
0

내 충돌 프로그램 때문에 mojibake 주제를 게시했습니다. 부분은 임의의 바이트 코드입니다 (예 : 내가 그것을 취소 할 경우모기 맑음 mojibake 주제 유지

test/���������������/yoyoyo qqq 

가 그리고, 내가

mosquitto_pub -t test/���������������/yoyoyo -r -n 

뭔가를 입력하지만 이러한 문자가 원래 없기 때문에이 작동하지 않았다,이 코덱은 아스키의 불일치이며, 유니 코드는 문자로 표시됩니다.

전체 보관 파일을 삭제하지 않고 보관 메시지를 지우려면 어떻게해야합니까?

감사합니다.

답변

1

당신은 실제 문자는 당신이 그들을 캡처하고이 같은 뭔가 mosquitto_pub로 재생할 수있는 운동을 할 수없는 경우 :

mosquitto_sub -v -C 1 -N -t 'test/+/yoyoyo' > file.txt 

이 파일에 주제와의 페이로드를 저장합니다 패턴과 일치하는 첫 번째 메시지 화제와 paylaod 사이에 공간이있을 것입니다.

그런 다음 페이로드를 제거하고 (마지막에 새로운 라인 그 자체의 줄에) 그냥 주제를 떠나 그런 다음에이를 피드백 할 수있다 edited_file.txt

으로 저장하는 파일을 편집 할 수 있습니다 mosquitto_pub, -n 플래그 (널 메시지) 및 -r 플래그를 (메시지를 유지)를 추가

mosquitto_pub -t `cat edited_file.txt` -r -n 
+0

당신이 @hardillb 감사합니다! 그 주제를 제거했습니다! 하지만 게시 설명에 -r 플래그를 추가해야합니다. 나는 편집했습니다. :) – Asoul