|
ずっと以前から悩んでいたことなのですが、どこで聞いていいかわからず、 ここで書きます。よろしくお願いします。 会社の FreeBSD で Perl を使っていますが、nfs mount でいろんな マシンで同じスクリプトを使えるようになっていますが、 あるスクリプトが急に text file busy と言われます。 語感からするとエディット中に実行したとか、 複数の人が一つのスクリプトを実行しているとか いう感じですが、そうなっていても実行できるスクリプトは 実行できますし、どう考えてもヒマなファイルが同様の原因で 怒られます。 で、こうなってしまったら、件のスクリプトのディレクトリに行き % cp busyscript foo % rm busyscript % mv foo busyscript % chmod 755 busyscript これで百発百中修復します。 なぜなんでしょう。どなたかご教示をお願いします。 |
|
つい最近、perlを勉強しはじめた者です。本に掲載されているごく 簡単な例を実際サーバにUPして試しているのですが、 エラーメッセージが出てしまい、困り果てています。 よろしければ、アドバイスをお願い致します。 #!/usr/local/bin/perl5 print "what is your name?"; $name = <STDIN>; chomp($name) ; If ($name eq "kate") { print "Hello,kate! How good of you to be here!\n"; } else { print "Hello, $name\n"; } 以上です。 エラーメッセージは syntax error at test.cgi line 7, near "}" Execution of test.cgi aborted due to compilati on errors. です。 |
|
>>1899 kate (あれ、使い方がわからない…。(>_<)) kateさんのPerlの質問ですが、5行目の「If」を「if」にすると できますよ。あとついでなのですが、 "what is your name?\n"; とすると良いですね!(^^ゞ |
|
>>1897 68user ありがとうございます。これから試してみますので、結果が出たらまた ご報告いたします。→みなさま。 |
|
1900 りんたろお。さんありがとうございました。 ケアレスミスというか、本当にしょうもないミスだったの ですね・・(^-^; アドバイスありがとうございました!また、ヨロシクお願いします。 |
|
はじめまして。 Perlのネットワークプログラムについての質問なのですが、 あるサーバからあるサーバへデータをそのまま送るだけなのですが、 while (<$sock_recv>){ print $sock_send $_; } このときに受信側がユーザー操作によって受信をキャンセルされると、 >Can't use an undefined value as a symbol reference at ./test.pl line 46, <CLIENT> chunk 8322. と、エラーが出てプログラムが強制終了してしまいます。 強制終了せずに、受信側の受信キャンセルを検出する方法がありましたら 是非おしえてください。よろしくお願いします。 |
|
sendmaiを使用して2カ所にメールを送るにはどうすれば良いのでしょうか? open 〜 close を2度記述してもダメなのでしょうか。1度の記述だと正常に処理できるのですが2度の記述ですとうまくいきません。宜しくお願い致します、 open(MAIL, "| /usr/sbin/sendmail -t"); ・〜・ close(MAIL); |
|
>>1898 ふくし samba を使っていませんか? よく知りませんが samba はファイルを 読み込み禁止でロックしっぱなし (?) にするようで、そのとき ファイルを読もうとすると「Text file busy」となります。もし そうなら http://www.samba.gr.jp で検索すると解決策が見つかると 思います。 もし NFS しか使っていないなら、解決策はわかりません。 >>1903 しの print したデータを受け取る先のプロセスがいないと、print した 側には SIGPIPE が飛んできます。シグナルハンドラを設定して、 適切なエラー処理を行いましょう。 >>1904 くみ > open 〜 close を2度記述してもダメなのでしょうか。 それでもよいですし、2箇所に送ったことが相手先に知られても いいなら、 print MAIL "To: foo@hoge, bar@fuga\n"; でもいいです。 |
|
「ネットワークプログラミングの基礎知識」 http://X68000.startshop.co.jp/~68user/net/ を CVS に追加しました。 http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/net/ $Id:$ を挿入しまくったので、もしソースと解説の行番号がずれて いるかもしれません。見つけられた方はご指摘いただけると幸いです。 |
|
2カ所への送信はうまくいきました、有り難う御座いました。 ところが またまたしつもんです。sendmailで指定する件名が送信先によって文字化けしてしまいます。日本語文字コードによるものでしょうが、対策は具体的にどのようにしたらよいのでしょうか。 $sb='あいうえお'; print MAIL "Subject: $sb\n"; |
|
>>1907 くみ MIME encode する必要があります。 http://X68000.startshop.co.jp/~68user/webcgi/mail-2.html#2 をどうぞ。 |