2016-06-27 7 views
-1

system()を使用してCの配列に値を収集したいとします。Cでsystem()で値を取得する

付:

hcidump -a | egrep 'RSSI|bdaddr' | grep -A1 --no-group-separator 'bdaddr 78:A5:04:17:9F:66' | grep -Po 'RSSI:\s+\K.*' 

ような出力:

-25 
-24 
-23 
-26 
-26 

とCの配列にその値を格納したいのですが、それができないのですが、私は、仮定

system("hcidump -a | egrep 'RSSI|bdaddr' | grep -A1 --no-group-separator 'bdaddr 78:A5:04:17:9F:66' | grep -Po 'RSSI:\s+\K.*'"); 

これを達成するためのコマンドがあれば、誰もが考えていますか?またはworkaroung? 私の唯一のアイデアは、ファイルにデータを書き込んだり、後でその情報を読み取ったりすることですが、より良い承認を得たいと思います。

よろしくエイドリアン

+1

['popen'](http://man7.org/linux/man-pages/man3/popen.3.html)を参照してください。 –

+1

'popen()'がここで選ぶツールです。 'system()'はあなたをどこにも導かず、プログラムの出力に直接アクセスすることはできません。 – tofro

+0

https://stackoverflow.com/questions/1583234/c-system-function-how-to-collect-the-output-of-the-issued-command – Mine

答えて

2

使用linkとは、コマンドを実行し、whileループの内部に、アレイ内の各およびすべての行を格納します。あなたの仕事は終わった。

関連する問題