68user's page 掲示板

Prev< No. 2083〜2093> Next  [最新発言に戻る] [過去ログ一覧]
No. 2083 # 68user 2001/07/30 (月) 06:26:03
>>2082 猫じゃらし
ちゃんと環境を書きましょう。Windows ですか?

    1. ヘッダもそのまま 2.gif に出力してしまう。
    2. 改行が入ってしまうなら、Windows でテキストモードになっているのかも。

ということで、

    # ヘッダまでを読み飛ばす
    while (<$remote>){
        last if ( $_ eq "\n" || $_ eq "\r\n" );
    }
    # ここからが画像データ
    while (<$remote>){
        $outdata .= $_;
    }
    open(OUT, "> 2.gif");
    binmode(OUT);
    print OUT "$outdata";
    close(OUT);

でどうでしょう。

foreach を使わず while を使うのは、foreach の () 内はリストを要求する
ので、<$remote> はリストコンテキストで評価され、
  foreach ("1行目のデータ", "2行目のデータ", ..., "最終行のデータ"){
と展開されてしまうからです。よって、
    foreach (<$remote>){
        last if ( $_ eq "\n" || $_ eq "\r\n" );
    }
の時点でファイルハンドル <$remote> から全てのデータを読み
切ってしまうので、last で抜けた後には <$remote> という
ファイルハンドルにはデータが残っていません。

    foreach (scalar(<$remote>)){
で強制的にスカラーコンテキストにするならいいんですが、
この場合は素直に while を使った方がよいでしょう。

No. 2084 # 猫じゃらし 2001/07/30 (月) 14:35:52
>>68user
環境を書き忘れてすいません、マナー違反でしたね、、、
ちなみに、環境はWinMEでActivePerlを動かしている状態です。

さて、68userさんのレスにあったものをペーストして
ソースは下のようになりました。
http://uchu.hypermart.net/image2.txt

これで無事動かすことができました。ありがとうございます。
このHPは、これからも勉強参考にさせてもらいますね。
ではでは、、

No. 2085 # kazu 2001/07/30 (月) 16:17:17
はじめまして超初心者の者です。
質問なのですけど会社で渡されたCシェルのプログラムに

mailx -s

というコマンドがありまして調べても見つかりません。
UNIXのことなどさっぱり分からないので困っています。
知っている人がいたら教えてください。
お願いします。m(__)m

No. 2086 # 68user 2001/07/30 (月) 17:36:39
>>2085 kazu
ちゃんと OS 名やバージョンなどの情報を書きましょう。

> mailx -s
mailx は SystemV 系 UNIX のコマンドです。Linux にも
あるようですが、*BSD にはないはずです (FreeBSD なら
ports で mail/mailx がありますが)。

まぁメールの送信だけなら mail も mailx も同じようなもの
なので、そのまま mail に読み変えればよいでしょう。

No. 2087 # sato.k [E-mail] 2001/07/31 (火) 11:41:58
はじめまして。早速なんですが、UNIXの運用について質問があります。ログインユーザーごとに使用したい文字コードが違うんですが、どのように設定したらよいのでしょうか?教えてください。

No. 2088 # 68user 2001/08/01 (水) 15:09:22
>>2087 sato.k
ログインユーザごとに ~/.cshrc や ~/.profile で
    setenv LANG ja_JP.eucJP
とか
    LANG=ja_JP.eucJP; export LANG
とか書くか、/etc/profile や /etc/csh.cshrc でユーザ名をみて
適切な locale を設定するのはどうでしょうか。

具体的な locale 名や、/etc/ の下のファイル名などは
OS によって違いがあるので、お使いのシステムではどうなって
いるか確認して下さい。

FreeBSD なら /etc/login.conf に各ロケール分のログイン
クラスを作るのもいいかな。

No. 2089 # 68user 2001/08/04 (土) 17:34:26
>>2079 るは
> こちらに掲載されているC言語のechoプログラム(echo-server-1.c)を
> そのまま書き写して実行したのですが、先頭の1文字しか返ってきません。
遅くなりましたが、さきほど直しました。
    http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/net/sample/echo-server-1.c
ご指摘ありがとうございました。

No. 2090 # 68user 2001/08/05 (日) 04:11:29
UNIX の部屋をやっと CVS に突っ込みました。悲願達成。
    http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/unix/
これで思う存分更新ができます。

    - コンテンツをローカルでも修正し、web サーバでも修正して、
        どっちが最新版かわからなくなる
    - 前回から更新した部分はどこだったろうか? と忘れてしまう
という経験がある方は、CVS で管理してみてはどうでしょうか。
僕はもう CVS なしでは生きていけません。

なお、普通は http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/
のように cvsweb でリポジトリ公開なんてことはしません (笑)
公開しなくても CVS で管理できます。

No. 2091 # 紅の猫 [E-mail] 2001/08/05 (日) 10:11:27
>> こちらに掲載されているC言語のechoプログラム(echo-server-1.c)を
>> そのまま書き写して実行したのですが、先頭の1文字しか返ってきません。
>遅くなりましたが、さきほど直しました。
\nの所に\0を書き込んでる気がします。

No. 2092 # 紅の猫 [E-mail] 2001/08/05 (日) 11:35:58
#2091
>\nの所に\0を書き込んでる気がします。

よく見たら、そんなこと有りませんでした。
訂正します。

No. 2093 # 68user 2001/08/07 (火) 01:10:03
かなりどうでもいい話題なんですが、UNIX の部屋の検索で一件もヒットしな
かったキーワードを調べてみました。対象は 2001 年。括弧内は検索回数。

なんとなく現在足りない情報がわかって興味深かったです。
今後の参考にさせていただきます。

Solaris or SystemV 系 … 特に管理系がいまいち弱くて申し訳ない。
    useradd(541)
    sar(378)
    ufsdump(161)
    pkgadd(146)
    mailx(145)
    dbx(95)
    groupadd(88)
    usermod(74)
    ufsrestore(60)
    usradd(55)
    nawk(54)
    userdel(54)
    pkginfo(54)
    vfstab(50)
    sjtoeuc(40)
    
こんなのふつー載ってるだろ系 … なるべく早く書きます
    ssh(242)
    expr(172)
    scp(149)
    a2ps(108)
    iconv(95)
    chroot(57)
    pushd(52)
    ulimit(49)
    slogin(39)
    rcs(38)
    bz2(36)
    
Windows の用語をそのまま打ち込んだ系?
    rename(171)  mv のところに「Win で言うところの rename」と書いておけばよい?
    tracert(36)  traceroute のところに「Win で言うところの tracert」と書いておけばよい?
    tree(46)  これは find かなぁ。
    
68user の弱い方面系 … 申し訳ない。満足な解説書けません。
    lpr(328)
    arp(194)
    cpio(177)
    iostat(102)
    rsync(79)
    バックアップ(73)
    lpq(64)
    プリンタ(58)
    restore(56)
    mkfs(55)
    mknod(54)  こんなの検索するんだ…
    sccs(53)
    プリント(50)
    lpstat(43)
    snmp(39)
    パーティション(39)
    
これ何? 系 … 誰か教えて。
    snoop(161)
    ipcs(112)
    fdisk(90)
    filec(66)
    ndd(43)
    showrev(52)
    ipconfig(53)
    ioscan(51)
    mpstat(44)
    substr(45)  perl?
    
入力が不適切系 … 全角アルファベットはないのですよ。半角に自動置換しようかしら。
    ls(196)  
    ユーザー(166)  ユーザならあるんですけど
    解凍(150)  展開で統一してます。改善予定
    ftp(127)
    cp(106)
    ln(90)
    ps(85)
    rm(54)
    リダイレクション(49)  その後「リダイレクト」で検索してくれただろうか
    df(48)
    クーロン(43)  これは改善予定
    mv(40)
    csh(35)
    
その他:
    select(91)
    bdf(88)
    atol(85)
    ファイル検索(70)
    logger(68)  需要あるのかなぁ。
    pdf(63)
    ファイル名変更(54)
    flock(54)
    htpasswd(53)  うーん
    samba(43)
    jar(42)  なぜ jar が
    gateway(41)
    access(36)


ちなみに検索にヒットしたキーワードのトップ20はこちら (リンクを
たどったものは除く。訪問者が入力したキーワードのみ)。
      tar(7512)
      grep(3832)
      find(3219)
      ftp(2502)
      ls(2490)
      vi(2370)
      cp(2215)
      ps(1799)
      rm(1773)
      chmod(1677)
      gzip(1528)
      cron(1511)
      ln(1368)
      mount(1352)
      crontab(1330)
      sed(1257)
      make(1188)
      awk(1150)
      mail(1034)
      date(1047)

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