|
>3492 すみません カンマが余分でした。 ありがとうございます。 |
|
HP-UXでのawkについて質問なのですが、 awkを使用してファイルのENDを判断できるのですか。 例えば、 cat date.txt aaa aaa bbb aaa bbb ccc 111 111 222 111 222 3333 とあった場合、 ------------------------ #/bin/sh awk ' function sub() { } getline ; 処理省略 { if (NF == 0) next ; if (NF >= 1) sub() ; ※ }' data.txt ---------------------- ※の場所でファイルのENDか判断したいのですができるのでしょうか。 |
|
>>3496 ブラウン ファイルのENDというのが最後の行の事なのか EOFの事なのか不明ですが、最終行であれば以下のように。 ちなみに環境はSolarisです。 ------ #!/bin/sh max_line=`wc -l $1 | awk '{ print $1 }'` awk '{ print ; if ( NR == max_line ) printf "END\n" }' max_line=$max_line $1 ------ 行数を取得する為だけにawk使うのはどうかと思いますが。 |
|
はじめましてです。C言語を勉強しているものです。 質問なんですが、ネットワークプログラミングで チャットを使ったゲームみたいなものを作りたいなと思っておりまして、 具体的にチャットではサーバーがクライアント全員にメッセージを送る 形になりますが、このゲームではクライアントが メッセージを送る人を選ぶことができるようにしたいのです。 たとえば会話しているのは5人いるけどそのうち3人に送ろうという 感じです。クライアント側で、全ユーザーの名前が表示され その中から送る人を選ぶみたいなかんじのゲームなんですが。 チャットにおいて選んだユーザーにだけメッセージを送るというのは 一体どうすれば可能なのですか? |
|
>>3497 zsh ありがとうございます。 説明不足ですみません。 ファイルのENDというのは、最終行ではなく、EOFのことです。 また、行数を取得するためにawkを使用していません。 awkを使用して、ファイルから1レコードづつよみこみ条件 毎に処理を行い、EOFだったら終了と考えていたのですが。 |
|
>>3499 ブラウン 取得したいのがEOFだとすると getlineの戻り値見るくらいしか思いつきません。 普通にENDに記述じゃダメですか? 或いは行数+フィールド番号でファイルの最後をチェックするとか。 >また、行数を取得するためにawkを使用していません。 すみません、行数を取得するためだけにawkを使うのはどうか というのは自分に対して言ったものです。 |