68user's page 掲示板

Prev< No. 2917〜2922> Next  [最新発言に戻る] [過去ログ一覧]
No. 2917 # G 2002/10/25 (金) 16:39:46
下記のスクリプトはHP-UXの/etc/rc.configファイルなのですが,${CFG_FILE##*/}と${fname##*[.,~\#]}の解読ができません。
どうかご教示ください。よろしくお願い致します。

for CFG_FILE in /etc/rc.config.d/* /etc/TIMEZONE
do
    fname=${CFG_FILE##*/}
    if [ -f $CFG_FILE -a "$fname" !="core" -a "${fname##*[.,~\#]}" = "$fname"]
    then . $CFG_FILE
    fi
done

No. 2918 # ふくし 2002/10/26 (土) 03:01:41
今日簡単なタテケイの問題がありました。タブ区切りで
    ブック名 ファイル名 数値A 数値B 数値C
    ・・・

というファイルをブック名ごとにサマリーし、やはりタブ区切りで
    ブック名 Σ数値A Σ数値B Σ数値C
    ・・・
というファイルを作らなければならなかったのですが、

    while(<STDIN>) {
        ($bname = $fname, $A, $B, $C) = split;
        $data{$bname}{A} += $A;
        $data{$bname}{B} += $B;
        $data{$bname}{C} += $C;
    }
    for $bname (sort keys %data) {
        print join, /\t/, $bname,
            $data{$bname}{A},$data{$bname}{B},$data{$bname}{C},"\n";
    }

とか書いたらどうしても数値が若干少なくなってしまいます。
数万行あって、ほとんどの行は合ってるんだけど
全体の数字が少ない、、。
しかも、カラム A と B は合ってるのに C だけ少ない。

よくよく見るとファイル名に空白が入ってて、
split /\t/ にしないといけなかったんでした。
しかも、ファイル名が空白のデータは特定のカラムにしか
データがなかった。
ふつうこんな間違い方はしませんが、同時に複数の問題が
発生していて、すごくハマりました(泣)

No. 2919 # みー [E-mail] 2002/10/27 (日) 17:33:09
はじめまして。さっそくなんですが質問です。
掲示板CGIを改造してメール送信機能をつけたのですが、改行が反映されていなかったり、題名が文字化けしたりしてます。
ソースはhttp://www.starcity.ne.jp/~hide/0test/treebbs+.txtです。
元はhttp://www.starcity.ne.jp/~hide/0test/treebbs-.txtです。
#------------------メール送信機能-------------------------#
open(MAIL,"| /usr/sbin/sendmail -t") || &error("送信できません。");
print MAIL <<"_MAIL_";
From: ars\@xx.xx
To: hide_mkhs\@yahoo.co.jp
MIME-Version: 1.0
Subject: A-train railway service
X-Mailer: Sendmail
Content-type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit

投稿がありました。
名前:$name
題名:$subject
メールアドレス:$mail
ホームページ:$url
メッセージ:$msg
---------------------------------------
投稿者情報
IP:$ip
ホスト:$host
---------------------------------------
A-train railway service(http://www.starcity.ne.jp/~ars/)
_MAIL_
close(MAIL);
#--------------------メール送信機能------------------------#
こう書き加えたんですが…
いま題名はA-train…ですが、日本語にすると文字化けしてしまい、来たメールは
投稿がありました。
名前:みー
題名:新規
メールアドレス:ars@starcity.ne.jp
ホームページ:http://www.starcity.ne.jp/~ars/
メッセージ:<b>タグは‥?</b>どうでしょう?
---------------------------------------
投稿者情報
IP:218.133.200.111
ホスト:YahooBB218133200111.bbtec.net
---------------------------------------
A-train railway service(http://www.starcity.ne.jp/~ars/)
のように改行が反映されてなく、タグもみえみえです。しかも、レスの記号をあらわす">"は&gt;となってしまいます。

どうすればいいのか教えてください。

No. 2920 # ふくし 2002/10/29 (火) 02:10:19
>>2919 みー
メールは HTML じゃなくてプレーンテキストなので、
タグが見え見えだったり改行がそのままだったりするんでしょう。
HTML 形式を維持するなら
HTML メールをサポートしてるメーラーに
HTML 形式のメールを送ればいいんじゃないでしょうか。
(その場合ヘッダはどうなるんでしょうね。
    よくわかりません。よく広告とかで壁紙がついてきたりするから、
    できることはわかっているのだが、、)
題名が文字化けなのは、ISO-2022-JP を正しく読み込んで
ないからでしょう。ブラウザーが送ってくる文字はさまざまなので、
jcode.pl あたりで変換するとか。

No. 2921 # yuk 2002/10/30 (水) 11:50:10
こんにちは。
ちょっとわからないことが有ります。
ご存知の方は教えていただけますでしょうか。
cshで、

set str = "abc def" (←abcとdefの間は全角スペース)
echo $stf

とすると、

abc def (←abcとdefの間は半角スペース)

と表示されてしまいます。
なんとかsetで設定した通りに(全角スペースをそのままに)出力したいのですが、
どのようにすれば良いでしょうか?

No. 2922 # yuk 2002/10/30 (水) 11:52:39
>>2921(訂正)

echo $stf
ではなく
echo $str
でした。

Prev< No. 2917〜2922> Next  [最新発言に戻る] [過去ログ一覧]