過去ログ
No.322.grepを用いてデータを取り込みたい
[戻る]
[ホームページ]
No.2001
MS-DOSコマンドを実行する
投稿者---TOKI(2002/07/07 19:00:39)
system("なにかいれる");
上記のように関数systemを利用すると、MS-DOSコマンドを実行することができます。
そこで、あるファイルからgrep機能を用いてデータを配列もしくはポインタに取り込みたいのですが、うまくいきません。
どうすればいいでしょう?
お願いします。
No.2004
Re:MS-DOSコマンドを実行する(その出力を取り込む)
投稿者---kikk(2002/07/07 20:16:18)
ども。
やりたいことがよくわかりませんが、
system("grep pattern infile>infile.greped")
としたあと、infile.grepedを読み込むのではだめでしょうか?
なお、もしgrep後のファイルを読んで処理して出力するのが
そのプログラムのメインの機能であるならば、UNIX系の
コマンドみたいに、「引数に入力ファイルが指定されなければ
入力は標準入力とする」というような仕様にしてしまうのも
ひとつの手かもしれません(system()をなくせます)。
では。
No.2015
Re:MS-DOSコマンドを実行する(その出力を取り込む)
投稿者---TOKI(2002/07/09 08:59:10)
Perlには文字列を検索する機能が備わっていますが、Cにはそれがないです。そこで、関数Systemを利用すればMS-DOSコマンドを実行するので、そこからgrepをうまく利用して文字を検索できればと思ったわけです。文字を検索するソースプログラムを作成してもいいのですが、ソースが長くなりすっきりしないです。難しい(汗;