- ベストアンサー
execl関数上でvmstatを使ったcpu使用率の取得
ソケットを使用したネットワークプログラミングを 作成しているのですが、その中でexecl関数を使用して vmstatを実行して、コンソールに結果を示すまではできるのですが、その結果をファイルに出力させることができません。execl上で第一引数を"vmstat>ファイル名"にしてもファイルは作られません。一体どうしたらよろしいのでしょうか?言葉が足りない部分があるかもしれませんが、どうぞよろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- alicia-y
- ベストアンサー率40% (85/208)
ソケットを使用したネットワークプログラミングの前に 標準出力、標準入力、とかもっと基本的なことを先にしないと。 ちなみに system 関数でやろうと思えばできますけど。 ネットワークプログラミングになりませんよね。 「コンソールに結果を示すまで」とはどこに出ますか? クライアントからサーバに要求してサーバの vmstat の結果をクライアントで受け取る事ができたということでしょうか。
お礼
迅速な回答、真にありがとうございます。 基本的な知識が欠けていて申し訳ございません。努力していきます。 コンソールに結果を出せるのは、クライアント側からパスを入力して(/usr/bin/vmstat)サーバ側のコンソールに出力までしかできていません。回答していただいたように、クライアントで受け取りたいのですが、方法はありますでしょうか?お手数をかけますが、よろしくお願いします。
- na_kirajp
- ベストアンサー率43% (33/76)
vmstatをシェルにしてみてはどうでしょうか? sh_vmstat.shにvmstat > ファイル名を記載し、 execlで起動するのはシェルを起動する。
お礼
迅速な回答を真にありがとうございます。 シェルにする方法はどのようにすればよろしいのでしょうか? 基本的な質問であったら、非常に申し訳ないのですが、よろしくお願いします。
お礼
本当にありがとうございます。 教えていただいたURLを参考に努力します。