我正在嘗試在筆記型電腦和手機之間手動連接。我已經安裝了bluez-utils
版本4.98-2ubuntu7
。當我在終端上運行代理時,我得到:
asheesh@U32U:~$ sudo bluetooth-agent 4835
Pincode request for device /org/bluez/980/hci0/dev<id>
Authorizing request for /org/bluez/980/hci0/dev<id>
當我嘗試透過手機配對時,會列印 pincode 請求行。當我根據提示輸入密碼後,設備將獲得授權。我現在可以從手機將文件發送到筆記型電腦。但是,應用程式在授權請求後會卡住,控制權不會傳回終端。
為什麼會發生這種情況?我如何重新獲得控制權?
這似乎與我在互聯網上看到的示例相反,在互聯網上,終端在授權運行進一步命令後才可用。
我意識到在後台運行它是一個可能的解決方案,但由於配對完成後我需要運行某些其他任務,所以我更願意讓它在前台運行。
我嘗試使用這個:
bluetooth-agent "$PIN" 1> ./bluelog #Background run tested also
但是,該進程在完成(或被終止)之前不會將其輸出寫入文件,因此我無法測試bluelog
.有沒有辦法強制進程在完成之前寫入輸出?
答案1
這只是解決該問題的方法。bluetooth-agent
歡迎就如何解決實際的停頓問題提出任何建議。
我曾經在後台運行時stdbuf
禁用行緩衝。這會即時更新日誌文件,從而讓我檢查並觸發其餘需要完成的活動。STDOUT
bluetooth-agent
stdbuf -o 0 bluetooth-agent "$PIN" 1> ./bluelog &