|
>>2742 68user 早速のご回答、ありがとうございます。 確かにftpプロセスの監視しかないかな、と思います。 そこで、再度質問なんですが、このftpコマンドを使用している シェルがCシェルで書かれています(すいません、先に言って おくべきでした)。 Cシェルでは直前に実行したコマンドのプロセスIDを取得する 方法はあるのでしょうか? ($!はKシェル、Bシェルのみの文法と調べたら書いてありました) |
|
echoサーバの 3: #include <stdio.h> 4: #include <netdb.h> 5: #include <sys/types.h> 6: #include <sys/socket.h> 7: #include <sys/uio.h> 8: #include <unistd.h> 9: #include <sys/param.h> 10: #include <netinet/in.h> 11: #include <arpa/inet.h> この部分なのですが、#include <stdio.h>はわかるのですが、 他の物は参考書も見ても掲載されていません。 なんなのでしょうか? |
|
昨日から、UNIXを勉強しだしました。大変、初歩的な質問かもしれないのでごめんなさい。 アクセス状態が-rw-------のファイルをmoreで表示させたいのですが、私はファイルの所有者ではないので表示させることができません。chmodは使わないでアクセスを出来るようなのですが、どうすれば良いのですか? どなたか教えてください。よろしくお願いします。 |
|
>>2745 シゲ すみません。解決しました。 パスワードが解ればrootで入れるんですね。 |
|
>>2743 バクモン > Cシェルでは直前に実行したコマンドのプロセスIDを取得する > 方法はあるのでしょうか? $status です。 >>2744 だいすけ 例えば、関数 listen を使いたい場合は、man listen として、 include すべきファイルを調べます.同様に accept や bind など、 使用している関数全てについて調べていくと、それだけのファイルを include する必要がある、ということです。 |
|
ここのサイトのC言語のHTTPクライアントを使わせてもらって色々勉強させてもらってます。そこで質問なのですが、imodeのURL例えば(http://mobile.yahoo.co.jp/)のレスポンスが返ってくるプログラムを作ろうとしているのですが、どうも、302 FOUND がでてしまい、うまくいきません。どのように解決したらよいでしょうか? |
|
>>2748 木場 Locaiton: ヘッダに示されている URL を読み込めばよいです。 |
|
前回のことについての質問のつづきですが 僕のもっている参考書には掲載されてないのですが、 僕のもっている参考書が古いということでしょうか? |
|
>>2747 68user ご回答ありがとうございます。 ただ、$statusは直前のコマンドのリターン値がセットされる と認識しています。 Cシェルで直前のプロセスIDを取得するには、プロセスをバック グラウンドで動かすようにして、その際に標準出力されるプロセス IDをテキストファイルにおとして、grepなりをする方法しか ないかな、と考えています。 そこで、以下を考えました。 ftp -n <<EOF & open [IPアドレス] user [ユーザ名] [パスワード] binary get [getするファイル名] [保存するファイル名] close quit EOF これを実行すると [1] 10161 と言った形でプロセスIDが出力されます。 ただ、これをテキストファイルに落とす方法がわかりません。 多分、リダイレクトをするのだと思っているのですが、どこに それをうめこめばいいのでしょうか? |
|
それとも C言語で新しくできた関数なのでしょうか? |
|
>>2751 バクモン ああ、そういう意味ですか。 tcsh だと $! で取れますが、csh では無理かもしれないですね。 jobs -l だと取れそうですが、どうでしょうか。 ただ、僕なら監視用プロセスを別に起こします。 例えば、 mkdir /tmp/.ftp-lock ftp -n <<EOF open .. quit EOF rmdir /tmp/.ftp-lock として、監視プロセスは n 秒前より過去に /tmp/.ftp-lock が作成されて いたら、 kill `ps -ef | grep get-file.sh | grep -v grep' する、とか。 もちっと確実にするなら ln -s $$ /tmp/.ftp-pid ftp -n <<EOF open としてプロセス番号を特定できるようにする方法もあります ($$ は sh の プロセス番号なので、$$ の子プロセスを kill する必要がありますけど)。 >>2750 だいすけ 「何が」参考書に掲載されていないのですか? netdb.h? listen? accept? ここらへんの関数については規格化されていません。よって、UNIX では 使えても Windows では関数そのものがなかったりします。 例えば 「ANSI C マニュアル」 といった書名ならば、規格化された関数については網羅しているかもしれませんが、 規格外の関数については載っていなくても不思議ではありません。 |
|
5: #include <sys/types.h> 6: #include <sys/socket.h> 7: #include <sys/uio.h> 8: #include <unistd.h> 9: #include <sys/param.h> 10: #include <netinet/in.h> 11: #include <arpa/inet.h これらが参考書に掲載されてないという意味だったのですが manコマンドでしれべていくのですね。 どうもありがとうございます。 |
|
はじめまして。 まだ、UNIXをはじめたばかりの初心者です。 いま、windows環境のマシンからtera termを使ってUNIXマシンにpostgressqlをインストールしています。そこで、「カーネルのコンフィギュレショーションファイルをチェックする」と書かれているのですが、これってどうやるのですか? どなたか教えてください。 よろしくお願いします。 |
|
>>2755 ビギナー > 「カーネルのコンフィギュレショーションファイルを > チェックする」と書かれているのですが、これって > どうやるのですか? OS によって違います。 http://osb.sra.co.jp/PostgreSQL/Manual/PostgreSQL-7.1-ja/kernel-resources.html をどうぞ。 |
|
>>2756 68user ありがとうございます。 |
|
ご回答ありがとうございました。 今もちょっとわからないとこがあるのですが、 もうちょっと考えてわからなかったら、 聞きにきます。 |
|
再び質問です。 先ほどの質問と症状は似ているのですが、imodeのURLで(http://mobile.yahoo.co.jp/yahoo/index.html)のリクエストを出すと HTTP1.0 302 FOUND DATE Location http://mobile.yahoo.co.jp/error/404.html Conection: close のレスポンスが返ってきて、locationの部分を入れても実際のimodeのURLがゲットできなくて困っています。どのようにC言語のHTTPクライアント(1) のソースをいじればちゃんとしたレスポンスが得られるでしょうか? よろしくお願い致します。 |