|
>>4811 mac pop3-client-Net::POP3.pl の if ( $auth_check == undef ){ は誤った書き方で、正しくは if ( ! defined $auth_check ){ です (以前は undef かどうかのチェック方法を誤解していたため)。 これだとどうなりますか。 |
|
>>4813 68user > if ( ! defined $auth_check ){ バッチリです。それにしてもすばやいレス、本当に有難う御座います。 |
|
たいへん心苦しいのですが別のことをお聞きしてよろしいでしょうか。 HTTPクライアントのスクリプトで、Basic認証が通ったかどうか 戻り値などで判断する方法は有りますでしょうか。 いま確認中のスクリプトは以下の通りです。 #!/usr/local/bin/perl use strict; use HTTP::Request::Common; use LWP::UserAgent; my $req = POST( 'http://*****.jp/login.html'); $req->authorization_basic('ID', 'Pass'); my $ua = LWP::UserAgent->new; my $res = $ua->request($req); |
|
>>4815 mac HTTP::Response の code メソッドを使えばよいと思います。 ----- #!/usr/local/bin/perl use strict; use HTTP::Request::Common; use LWP::UserAgent; my $req = POST( 'http://X68000.q-e-d.net/~68user/net/sample/http-auth/secret.html'); $req->authorization_basic('hoge', 'wrong-password'); my $ua = LWP::UserAgent->new; my $res = $ua->request($req); print $res->code."\n"; my $req2 = POST( 'http://X68000.q-e-d.net/~68user/net/sample/http-auth/secret.html'); $req2->authorization_basic('hoge', 'fuga'); my $ua2 = LWP::UserAgent->new; my $res2 = $ua2->request($req2); print $res2->code."\n"; |
|
>>4816 68user 重ね重ね、有難うございました。 |
|
>>4810 68user さん、 そうなんですよ。use は引用符をつけてはいけないが use base だとダメ、 no strict 'refs'; だとあらゆる裸のワードを勝手にクォートするらしいです。 お騒がせしました。 |
|
>>4818 ふくし わかっておられるかもしれませんが、use base は built-in な文法ではなく ただ base.pm を use しているだけなので、base 内の sub import の引数として 渡されるから、ということですね。strict も実体は strict.pm なので同様に strict refs ではなく 'refs' としなければならないと。 個人的には、ここまで汚い造りにするかねぇ、という感じです。いちおう つじつまをあわせてるのはすごいですが。 |
|
awkを使ってファイルからある部分のデータを取り出そうとしています。 ファイルの内容 ---------------------------------- ---------------------------------------- Tue Jul 31 09:00:00 Jst 2007 xxxxxx xxxxxx xxxxxx xxxxxx Tue Jul 31 09:00:00 Jst 2007 ---------------------------------------- Tue Jul 31 09:10:00 Jst 2007 xxxxxx xxxxxx xxxxxx xxxxxx Tue Jul 31 09:10:00 Jst 2007 ---------------------------------------- Wed Aug 1 09:00:00 JST 2007 xxxxxx xxxxxx xxxxxx Wed Aug 1 09:00:00 JST 2007 該当の曜日、月、日から始まる行以降から 最終行まですべてを取り出そうとしているのですが、 awkで上手くいきません。 以下の様なエラーがでて上手くいきません。 どうすればよいのでしょうか。 awk: syntax error near line 1 awk: bailing out near line 1 シェルの内容 ----------------------------------------- #!/bin/sh LOG_FILE="/tmp/kekka.log" #DATE=`date "+%a %b %e"` DATE=`date +%C | cut -c 1-10` awk -v DAY=$DATE'/^DATE/,/\\r/ {print $0}' ${LOG_FILE} exit 0 |
|
UNIXの環境変数のLANGに使用する言語の指定に 「japanese」があるのですが、これは、日本語 が使えるのですか。それとも日本語のSJISが 使えるのでしょう。 また、UNIXのOSがどのコードなのかどこを見れば わかるのでしょうか。 また、EBCDICコードがあるのですが、これを使うには どうしたらよいのでしょうか。 |